mirror of
https://gitee.com/zoujingli/ThinkAdmin.git
synced 2026-06-07 20:48:09 +08:00
将 v6 中直接放在本地 app 的后台与微信能力迁移为 v8 插件组件,并把运行时基础能力沉淀到独立插件包。 主要内容: - 新增 think-library、system、worker、static、install 等基础插件包。 - 新增 account、payment、wechat-client、wechat-service、wemall、wuma 等业务插件包。 - 移除 v6 的 app/admin 与 app/wechat 本地应用实现,改由插件分发接管。 - 将 Helper 能力彻底并入 System,统一为 plugin\system\helper\* 命名空间。 - 同步插件迁移发布清单与根 route 占位,保证安装发布流程可复现。
221 lines
3.9 KiB
Markdown
221 lines
3.9 KiB
Markdown
# 微信公众号管理接口
|
||
|
||
## 接口标准
|
||
- HTTP 入口:`/api/wechat-client/{controller}/{action}`
|
||
- 返回类型不完全统一:授权脚本返回 JavaScript,测试二维码接口可能返回图片/HTML,其余接口以 JSON 为主
|
||
- 支付通知、微信消息推送属于第三方回调接口,不要求业务 Bearer JWT
|
||
- HTTP 状态码固定返回 `200`
|
||
- `code` 统一使用常见业务状态语义:`200` 成功、`401` 未认证、`403` 无权限、`404` 资源不存在、`500` 服务端异常
|
||
|
||
```jsonc
|
||
{
|
||
"code": 200, // 业务状态码
|
||
"info": "ok", // 提示信息
|
||
"error": "", // 可选,401/403 等鉴权异常时返回稳定错误标识
|
||
"data": {} // 业务数据
|
||
}
|
||
```
|
||
|
||
## 接口列表
|
||
|
||
### `/api/wechat-client/login/qrc`
|
||
- 说明:生成公众号登录二维码
|
||
|
||
```jsonc
|
||
{
|
||
"mode": 1 // 登录模式或授权模式
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/login/oauth`
|
||
- 说明:公众号 OAuth 登录处理
|
||
|
||
```jsonc
|
||
{
|
||
"auth": "AUTH_CODE", // 微信回调授权码
|
||
"mode": 1 // 授权模式
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/login/query`
|
||
- 说明:查询授权登录结果
|
||
|
||
```jsonc
|
||
{
|
||
"code": "LOGIN_CODE" // 登录过程中的查询码
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/js/index`
|
||
- 说明:输出网页授权 JS 内容
|
||
|
||
```jsonc
|
||
{
|
||
"mode": 1 // 授权模式,默认 1
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/js/sdk`
|
||
- 说明:为指定页面生成 JSSDK 签名参数
|
||
|
||
```jsonc
|
||
{
|
||
"url": "https://example.com/page" // 需要签名的页面完整地址
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/test/jsapiQrc`
|
||
- 说明:生成 JSAPI 支付二维码测试页
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/oauthQrc`
|
||
- 说明:生成网页授权二维码测试页
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/jssdkQrc`
|
||
- 说明:生成 JSSDK 二维码测试页
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/scanOneQrc`
|
||
- 说明:生成扫码支付模式一测试二维码
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/scanTwoQrc`
|
||
- 说明:生成扫码支付模式二测试二维码
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/oauth`
|
||
- 说明:网页授权测试入口
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/jssdk`
|
||
- 说明:JSSDK 测试入口
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/scanOneNotify`
|
||
- 说明:扫码支付模式一通知测试入口
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/jsapi`
|
||
- 说明:微信 JSAPI 支付测试入口
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/test/notify`
|
||
- 说明:支付通知测试入口
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/view/news`
|
||
- 说明:展示图文消息列表
|
||
|
||
```jsonc
|
||
{
|
||
"id": 1 // 图文素材 ID
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/item`
|
||
- 说明:展示单篇图文内容
|
||
|
||
```jsonc
|
||
{
|
||
"id": 1 // 图文素材 ID
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/text`
|
||
- 说明:展示文本消息
|
||
|
||
```jsonc
|
||
{
|
||
"content": "hello" // 文本内容
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/image`
|
||
- 说明:展示图片消息
|
||
|
||
```jsonc
|
||
{
|
||
"content": "https://example.com/image.png" // 图片地址
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/video`
|
||
- 说明:展示视频消息
|
||
|
||
```jsonc
|
||
{
|
||
"title": "视频标题", // 视频标题
|
||
"url": "https://example.com/video.mp4" // 视频地址
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/voice`
|
||
- 说明:展示语音消息
|
||
|
||
```jsonc
|
||
{
|
||
"url": "https://example.com/voice.mp3" // 语音地址
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/view/music`
|
||
- 说明:展示音乐消息
|
||
|
||
```jsonc
|
||
{
|
||
"title": "歌曲标题", // 音乐标题
|
||
"desc": "歌曲描述", // 音乐描述
|
||
"url": "https://example.com/music.mp3" // 音乐地址
|
||
}
|
||
```
|
||
|
||
### `/api/wechat-client/push/geoip`
|
||
- 说明:获取当前请求出口 IP
|
||
|
||
```jsonc
|
||
{}
|
||
```
|
||
|
||
### `/api/wechat-client/push/index`
|
||
- 说明:微信公众号消息与事件推送回调
|
||
|
||
```jsonc
|
||
{
|
||
"appid": "", // 第三方平台模式下可传公众号 appid
|
||
"openid": "", // 第三方平台模式下可传用户 openid
|
||
"encrypt": 0, // 第三方平台模式下是否加密,0 否,1 是
|
||
"params": "{}" // 第三方平台模式下的消息体 JSON
|
||
}
|
||
```
|