API调用 帮助文档
HTTP、WebSocket调用地址
地址格式:(http | ws)://IP 或 域名:端口号/
端口可以随意设置,但需要自行开放安全组
例子:
本地:(http | ws)://127.0.0.1:8863/
内网:(http | ws)://192.168.0.167:8863/
外网:(http | ws)://xpw.apifox.cn:8863/
若外网调用,请确保您的网络拥有公网IP,否则无法使用
服务器:进入供应商控制台查看,找不到或有问题请联系您的供应商客服
本 地:需联系您当地网络供应商开通公网IP
提示:只能提示这么多,此类问题恕不解答
调用方式为 GET 或 POST 或 WebSocket
除 GET 外,必须使用 JSON
参数名 | 说明 | 类型 | 必填 | 备注 |
---|---|---|---|---|
token | 验证密钥 | string | 是 | 唯一验证凭证,泄露有风险 |
wsAPIreqID | API请求ID | int | 否 | WS方式专用请求ID |
api | API名 | string | 是 | 框架 或 httpApi 提供的可调用API |
robot_wxid | 机器人微信ID | string | 否 | |
@param1 | 参数 | @ | 是 | |
@param2 | 参数 | @ | 是 | |
....... | ...... | ...... |
GET 例子
值请使用URL编码处理
http://192.168.0.167:233?token=7k7k&api=SendTextMsg&robot_wxid=wxid_eu05e13ld28822&to_wxid=wxid_l5ltfi4zxv9a22&msg=%E4%BD%A0%E5%A5%BD
POST 例子
若无法确保不会出现影响JSON解析的值,请使用USC2编码处理
POST http://192.168.0.167:8863 HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36
{
"token": "7k7k",
"api": "SendTextMsg",
"robot_wxid": "wxid_eu05e13ld28822",
"to_wxid": "wxid_l5ltfi4zxv9a22",
"msg": "\u4f60\u597d"
}
WebSocket 例子
若无法确保不会出现影响JSON解析的值,请使用USC2编码处理
{
"token": "7k7k",
"api": "SendTextMsg",
"robot_wxid": "wxid_eu05e13ld28822",
"to_wxid": "wxid_l5ltfi4zxv9a22",
"msg": "\u4f60\u597d",
"wsAPIreqID": 786
}
wsAPIreqID使用介绍:
由于 WebSocket 并非应答式协议
您需要自建缓存池等方式 通过wsAPIreqID标识取回API返回的数据
在API请求json中 添加wsAPIreqID标识,如 "wsAPIreqID": 786
在返回数据json中 会返回相同的wsAPIreqID标识,如 "wsAPIreqID": 786
wsAPIreqID标识 生成规律没有限制 可随意发挥
没有返回值的API 可以忽略不写
API调用后返回json,固定参数如下
Code:httpApi 插件返回 API接口调用状态码
与API功能成功无关
如:SendTextMsg(发消息)调用成功 但 未发出,亦返回0
Result:httpApi 插件返回 API接口调用状态说明
wsAPIreqID:httpApi 插件返回 API调用 WS请求标识,仅WS方式调用时存在
根据API返回类型返回以下值(VLW 框架返回数据):
返回值类型 | JSON路径名 | 类型描述 |
---|---|---|
null | 没有返回值 | |
str | ReturnStr | 文本型内容(USC2编码) |
bool | ReturnBool | 逻辑值返回 |
int | ReturnInt | 整数型内容 |
json | ReturnJson | JSON内容 |
// [null] HTTP(GET/POST)示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK" // 状态说明,如失败的原因}
// [null] WebSocket示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 -200 至 -299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "wsAPIreqID": 786 // API请求ID}
// [str] HTTP(GET/POST)示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnStr": "\u4f60\u597d"}
// [str] WebSocket示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnStr": "\u4f60\u597d", "wsAPIreqID": 786 // API请求ID}
// [bool] HTTP(GET/POST)示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnBool": true}
// [bool] WebSocket示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnBool": true, "wsAPIreqID": 786 // API请求ID}
// [int] HTTP(GET/POST)示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnInt": 123}
// [int] WebSocket示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnInt": 123, "wsAPIreqID": 786 // API请求ID}
// [json] HTTP(GET/POST)示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnJson": {"o":true}}
// [json] WebSocket示例{ "Code": 0, // 状态 0成功 -1未在白名单 -2token有误 -3api有误 -4参数有误 -97其他错误 -98调用方式有误 -99数据解析失败 -100未知错误 200——299具体含义请参考调用API的注释 "Result": "OK", // 状态说明,如失败的原因 "ReturnJson": {"o":true}, "wsAPIreqID": 786 // API请求ID}