在手机上用QQ 机器人发消息,没有回复.在workbuddy上测试.单聊主动消息发送失败(错误码 11255)
【问题描述】
使用 QQ 官方机器人 API 发送单聊消息时,Token 获取成功,但发送消息接口持续返回错误码 11255。
【环境信息】
- 操作系统:macOS
- 运行平台:WorkBuddy(AI 自动化工具)
- 语言:Python 3.9
- 接口:POST /v2/users/{openid}/messages
- AppID:102882069
【Token 获取 — 成功】
resp = requests.post(
'https://bots.qq.com/app/getAppAccessToken',
json={'appId': APP_ID, 'clientSecret': APP_SECRET}
)
返回正常:{'access_token': 'xxx', 'expires_in': '4444'}
【发送消息 — 失败】
headers = {
'Authorization': f'QQBot {token}',
'X-Union-Appid': APP_ID,
'Content-Type': 'application/json'
}
url = f'https://api.sgroup.qq.com/v2/users/{openid}/messages'
payload = {
'content': '测试消息',
'msg_type': 0
}
resp = requests.post(url, headers=headers, json=payload)
【错误返回】
HTTP 状态码:500
响应内容:
{
"message": "invalid request",
"code": 11255,
"err_code": 11255,
"trace_id": "8b15f78a04fbd165ac66bc9fcab80c20"
}
【已排查】
1. AppID 和 Secret 均正确(Token 能正常获取)
2. 加上 msg_seq 字段后仍然失败
3. OpenID 来自 QQ 开放平台后台,未通过 webhook 事件获取
【疑问】
1. 错误码 11255 官方文档未说明,具体是什么原因?
2. 主动消息的 OpenID 必须通过 webhook 事件获取吗?直接用后台 OpenID 是否无效?
相似问题