当前位置: 首页 > wzjs >正文

南京营销型网站建设公司浙江百度代理公司

南京营销型网站建设公司,浙江百度代理公司,前端学习网站,wordpress 钩子大全文章目录 AI书签管理工具开发全记录(十六):Sun-Panel接口分析1.前言 📝2.sun-panel介绍2.接口分析2.1 登录接口2.2 请求header2.3 分组列表接口2.4 查询分组下全部书签列表2.5 创建分组2.6 创建书签 3.接口快速验证 AI书签管理工具…

文章目录

  • AI书签管理工具开发全记录(十六):Sun-Panel接口分析
    • 1.前言 📝
    • 2.sun-panel介绍
    • 2.接口分析
      • 2.1 登录接口
      • 2.2 请求header
      • 2.3 分组列表接口
      • 2.4 查询分组下全部书签列表
      • 2.5 创建分组
      • 2.6 创建书签
    • 3.接口快速验证

AI书签管理工具开发全记录(十六):Sun-Panel接口分析

1.前言 📝

在上一篇文章中,我们完成了TUI功能的开发。本文我们将聚焦于sun-panel的接口分析,为后续和sun-panel数据同步做准备。

2.sun-panel介绍

image.png
sun-panel是一个流行的导航面板,支持sun-panel同步无疑会方便许多。

2.接口分析

官方提供了openapi文档
image.png

我仔细阅读了文档,发现不是很好能满足我们的需求,例如没有根据分类查询所有书签的功能,也没有根据id查询书签的功能。

所以还是需要F12查看接口实际请求,根据我们实际业务进行调用。
本文所有接口基于1.7.0版本,后续版本请以实际为准。

2.1 登录接口

  • url: /api/login
  • method:post

请求参数

{"username": "xxxx","password": "xxxx"
}

返回参数

{"code": 0,"data": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 1,"createTime": "2024-03-16T06:04:58.211959305Z","updateTime": "2024-03-16T06:06:58.439132022Z","username": "admin","password": "","name": "zhyj","headImage": "","status": 1,"role": 1,"mail": "admin@sun.cc","referralCode": "","token": "675f688d-1a13-4429-84fe-92d9942636b0-144bbb22a486ad1af8e37ff437daf68b","userId": 0},"msg": "OK"
}

其中token字段就是我们需要的

2.2 请求header

image.png

拿到header之后,后续需要请求的接口需要携带上token。

需要拼接header

header = {
"Authorization": "Bearer "+token
}

2.3 分组列表接口

  • url: /api/panel/itemIconGroup/getList
  • method:post

请求参数

响应参数

{"code": 0,"data": {"count": 0,"list": [{"id": 6,"icon": "","title": "dev","onlyName": "dev","description": "","sort": 9999,"userId": 1,"publicVisitHide": false,"user": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 0,"createTime": "0001-01-01T00:00:00Z","updateTime": "0001-01-01T00:00:00Z","username": "","password": "","name": "","headImage": "","status": 0,"role": 0,"mail": "","referralCode": "","token": "","userId": 0},"cardStyle": {"style": 0,"textColor": "#ffffff","textInfoHideDescription": false,"textIconHideTitle": false}}]},"msg": "OK"
}

2.4 查询分组下全部书签列表

  • url: /api/panel/itemIcon/getListByGroupId
  • method:post

请求参数

{"itemIconGroupId": 6
}

返回参数

{"code": 0,"data": {"count": 0,"list": [{"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 19,"createTime": "0001-01-01T00:00:00Z","updateTime": "0001-01-01T00:00:00Z","cardType": 1,"icon": {"itemType": 2,"src": "https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg","text": "https://gw.alipayobjects.com/zos/rmsportal/KDpgvguMpGfqaHPjicRK.svg","backgroundColor": "#2a2a2a6b"},"title": "antv文档","onlyName": "","url": "http://192.168.31.93:8987/","lanUrl": "http://192.168.31.93:8987/","description": "","openMethod": 2,"sort": 9999,"backgroundColor": "#2a2a2a6b","itemIconGroupId": 6,"expandParam": {},"userId": 1}]},"msg": "OK"
}

2.5 创建分组

  • url: /api/panel/itemIconGroup/edit
  • method:post

请求参数

{"title": "test","cardStyle": {"style": 0,"textColor": "#ffffff","textInfoHideDescription": false,"textIconHideTitle": false}
}

响应参数

保留转义
{"code": 0,"data": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 9,"createTime": "2025-06-08T08:21:03.32422806Z","updateTime": "2025-06-08T08:21:03.32422806Z","icon": "","title": "test","onlyName": "","description": "","sort": 9999,"publicVisitHide": 0,"userId": 1,"user": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 0,"createTime": "0001-01-01T00:00:00Z","updateTime": "0001-01-01T00:00:00Z","username": "","password": "","name": "","headImage": "","status": 0,"role": 0,"mail": "","referralCode": "","token": "","userId": 0},"cardStyle": "{\"style\":0,\"textColor\":\"#ffffff\",\"textInfoHideDescription\":false,\"textIconHideTitle\":false}"},"msg": "OK"
}

返回的id参数即为新的分组id

2.6 创建书签

  • url: /api/panel/itemIcon/edit
  • method:post

请求参数

{"icon": {"itemType": 1,"backgroundColor": "#2a2a2a6b"},"title": "百度","url": "http://www.baidu.com","lanUrl": "http://www.baidu.com","description": "百度","openMethod": 2,"cardType": 1,"itemIconGroupId": 9,"backgroundColor": "#2a2a2a6b","expandParam": {}
}

返回参数

{"code": 0,"data": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 23,"createTime": "2025-06-08T08:27:28.252415057Z","updateTime": "2025-06-08T08:27:28.252415057Z","cardType": 1,"icon": {"itemType": 1,"src": "","text": "","backgroundColor": "#2a2a2a6b"},"title": "百度","onlyName": "","url": "http://www.baidu.com","lanUrl": "http://www.baidu.com","description": "百度","openMethod": 2,"sort": 9999,"backgroundColor": "#2a2a2a6b","itemIconGroupId": 9,"expandParam": "{}","userId": 1,"user": {"ID": 0,"CreatedAt": "0001-01-01T00:00:00Z","UpdatedAt": "0001-01-01T00:00:00Z","DeletedAt": null,"id": 0,"createTime": "0001-01-01T00:00:00Z","updateTime": "0001-01-01T00:00:00Z","username": "","password": "","name": "","headImage": "","status": 0,"role": 0,"mail": "","referralCode": "","token": "","userId": 0}},"msg": "OK"
}

3.接口快速验证

我们使用python,进行接口快速验证

import requests
import json  def login(url,username, password):"""登录:param username: 用户名:param password: 密码:return: token"""url = url + "/api/login"data = {"username": username,"password": password}response = requests.post(url, json=data)return response.json()class SunPanelApi:def __init__(self, token, url):self.token = tokenself.url = urlself.headers = {"Authorization": "Bearer "+token,"Token": token,"Content-Type": "application/json"}def get_group_list(self):"""获取群组列表:return:"""url = self.url + "/api/panel/itemIconGroup/getList"logging.info(f"请求URL: {url}")logging.info(f"请求头: {self.headers}")# 无需参数response = requests.post(url, headers=self.headers)return response.json()def get_list_by_group_id(self, group_id):"""获取群组下的列表:param group_id: 群组ID:return:"""url = self.url + "/api/panel/itemIcon/getListByGroupId"data = {"itemIconGroupId": group_id}response = requests.post(url, headers=self.headers, json=data)return response.json()def create_group(self, group_name):"""创建群组:param group_name: 群组名称:return:"""url = self.url + "/api/panel/itemIconGroup/edit"data = {"title": group_name,"cardStyle": {"style": 0,"textColor": "#ffffff","textInfoHideDescription": False,"textIconHideTitle": False}}print(url)print(data)response = requests.post(url, headers=self.headers, json=data)return response.json()def create_bookmark(self, group_id, name, url):"""创建书签:param group_id: 群组ID:param name: 名称:param url: 链接:param icon: 图标:return:"""url = self.url + "/api/panel/itemIcon/edit"data = {"icon": {"itemType": 1,"backgroundColor": "#2a2a2a6b"},"title": name,"url": url,"lanUrl": url,"description": name+",由api创建","openMethod": 2,"cardType": 1,"itemIconGroupId": group_id,"backgroundColor": "#2a2a2a6b","expandParam": {}}response = requests.post(url, headers=self.headers, json=data)return response.json()def print_json(json_data):"""打印JSON数据,使用json.dumps转换为标准JSON字符串(双引号、正确转义),indent=2使输出更易读:param json_data: JSON数据"""print(json.dumps(json_data, ensure_ascii=False, indent=2))

往期系列

  • Ai书签管理工具开发全记录(一):项目总览与技术蓝图
  • Ai书签管理工具开发全记录(二):项目基础框架搭建
  • AI书签管理工具开发全记录(三):配置及数据系统设计
  • AI书签管理工具开发全记录(四):日志系统设计与实现
  • AI书签管理工具开发全记录(五):后端服务搭建与API实现
  • AI书签管理工具开发全记录(六):前端管理基础框框搭建 Vue3+Element Plus
  • AI书签管理工具开发全记录(七):页面编写与接口对接
  • AI书签管理工具开发全记录(八):Ai创建书签功能实现
  • AI书签管理工具开发全记录(九):用户端页面集成与展示
  • AI书签管理工具开发全记录(十):命令行中结合ai高效添加书签
  • AI书签管理工具开发全记录(十一):MCP集成
  • AI书签管理工具开发全记录(十二):MCP集成查询
  • AI书签管理工具开发全记录(十三):TUI基本框架搭建
  • AI书签管理工具开发全记录(十四):TUI基本界面完善
  • AI书签管理工具开发全记录(十五):TUI基本逻辑实现与数据展示
http://www.dtcms.com/wzjs/75918.html

相关文章:

  • 济南网站建设优化公司网络舆情监测系统
  • 宿迁网站建设多少钱seo关键词优化经验技巧
  • 怎么做网站板块杭州排名优化公司电话
  • 为什么要建设图书馆网站怎样建网站?
  • 群站wordpress外链提交
  • 国外网页网站什么是百度竞价推广
  • 网站后台程序怎么做查询网站备案信息
  • wordpress woo theme郑州网站建设方案优化
  • 不拦截网站的浏览器营销软文范例大全100
  • 大宗贸易采购平台硬件优化大师下载
  • 上海企业服务seo外链建设的方法有
  • 房屋设计装修网站廊坊seo整站优化
  • 如何查询网站的主机推广自己的网站
  • WordPress全站跳转电商平台排名
  • 国内摄影作品网站有了域名如何建立网站
  • 怎么做门户网站设计上海网络营销公司
  • 安徽省六安市城乡建设厅网站国际军事新闻今日头条
  • magento 网站百度一下搜索引擎大全
  • 雷州市住房和城乡规划建设局网站seo去哪学
  • 深圳龙岗做网站公司推广普通话内容100字
  • 域名可以同时做邮箱和网站么口碑营销什么意思
  • 设计师学编程能自己做网站吗推广品牌的策划方案
  • 怎么做网站软件品牌营销策划
  • phpstudy wordpress班级优化大师手机版下载
  • 旅游网络营销策划方案大地seo
  • 网络做网站产品线上营销有哪些方式
  • 企业网站改造优化seo优化技巧有哪些
  • 合肥做企业建网站那家好seo第三方点击软件
  • 重庆专业网站建设网络广告一般是怎么收费
  • 网站推广公司ihanshi谷歌seo推广