# 配置信息
例如:
APPID: xxxxxxxxxxxxxxx
TOKEN: xxxxxxxxxxxxxxx
EncodingAESKey: xxxxxxxxxxxxxxx
# 接口信息
# 对话推荐接口(只签名不加密):
https://chatbot.weixin.qq.com/openapi/nlp/recommend_questions/TOKEN
接口类型:
POST请求
# 参数说明:
字段 | 类型 | 默认值 | 描述 |
---|---|---|---|
query | string | 使用JWT签名后的数据 |
query签名说明:
字段 | 类型 | 默认值 | 描述 |
---|---|---|---|
uid | string | 自动生成的随机标识 | 用户标识的唯一ID,比如:openid |
data | Object | {} | data为空 |
使用JSON Web Token的 HS256
算法对参数进行encode, 放入到query参数中
比如参数为
{
uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
data: {}
}
使用 jwt 和 EncodingAESKey
对数据对象进行encode得到加密字符串
const signedData = jwths256.encode(EncodingAESKey, {
uid: "xjlsj33lasfaf", //能标识用户的唯一用户id,可以是openid
data: {}
}
)
# 调用开放平台语义接口
curl -XPOST -d "query=signedData" https://chatbot.weixin.qq.com/openapi/nlp/recommend_questions/TOKEN
Tips: 在 jsonwebtoken.io 网站上可以参考如下步骤手动生成signedData
# 返回值说明:
字段 | 类型 | 描述 |
---|---|---|
results | Array | 字符串数组,推荐最多5个可以向机器人发问的问题。 |
# 返回格式:
{
"results": [
"在微信H5支付中,如何在服务端判断支付成功?",
"交易资金与结算资金不一致",
"修改结算账户",
"数据查看",
"微信支付商户自查违规指引"
]
}