微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

facebook messenger curl 请求返回 <Response [400]>

如何解决facebook messenger curl 请求返回 <Response [400]>

我是 Messenger API 的新手,我想使用 curl post 请求发送消息,这是我的代码

import requests

ACCESS_TOKEN = an Active access token

fb_url = "https://graph.facebook.com/v10.0/me/messages"
data = {
'recipient': '{"id":4098757906843152}',"message": {
"text": "hello,world!"
},"messaging_type": "MESSAGE_TAG","tag": "ACCOUNT_UPDATE"
}

params = {'access_token': ACCESS_TOKEN}
resp = requests.post(fb_url,params=params,data=data)
print(resp)

不幸的是,我收到了这条消息 任何帮助将不胜感激

解决方法

您需要将 data 更改为 json。 见https://stackoverflow.com/a/26344315/603756

从 Requests 2.4.2 版本开始,您可以在调用中使用 json= 参数(采用字典)而不是 data=(采用字符串)

import requests

ACCESS_TOKEN = '<access_token>'

fb_url = 'https://graph.facebook.com/v10.0/me/messages'
data = {
    'recipient': '{"id":<psid>}',"message": {
    "text": "hello,world!"
    }
}
params = {'access_token': ACCESS_TOKEN}

resp = requests.post(fb_url,json=data,params=params)
print(resp)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。