facebook-messenger - FB Messenger DELETE 持久菜单请求不起作用
问题描述
我能够成功地为每个用户添加持久菜单。
现在,当我删除持久菜单时,我得到 {'result': 'success'} 但仍然出现持久菜单。
当我检查用户的持久菜单状态时,它返回我添加的持久菜单。这是否意味着删除菜单不成功?
添加代码:
def add_persistent_menu(fb_id):
params = {
"access_token": PAGE_TOKEN
}
headers = {"Content-Type": "application/json"}
data = json.dumps({
"psid": fb_id,
"persistent_menu": [
{
"locale": "default",
"composer_input_disabled": False,
"call_to_actions": [
{
"type": "postback",
"title": Go To Shop,
"payload": "gotoshop"
},
{
"type": "postback",
"title": Explore Items,
"payload": "exploreitems"
}
]
}
]
})
req = requests.post(https://graph.facebook.com/v8.0/me/custom_user_settings, params=params, headers=headers, data=data)
删除代码:
def delete_persistent_menu(fb_id):
params = {
"access_token": PAGE_TOKEN,
"psid": fb_id,
"params": '["persistent_menu"]'
}
headers = {"Content-Type": "application/json"}
req = requests.delete('https://graph.facebook.com/v8.0/me/custom_user_settings', params=params, headers=headers)
logger.info(f"Delete Persistent reponse: {req.json()}")
获取代码:
def get_persistent_menu(fb_id):
params = {
"access_token": PAGE_TOKEN,
"psid": fb_id
}
headers = {"Content-Type": "application/json"}
req = requests.get('https://graph.facebook.com/v8.0/me/custom_user_settings', params=params, headers=headers)
logger.info(f"Get Persistent reponse: {req.json()}")
获得持久的菜单响应:
"Get Persistent reponse":{
"data":[
{
"user_level_persistent_menu":[
{
"locale":"default",
"composer_input_disabled":false,
"call_to_actions":[
... persistent menus
]
}
]
}
]
}
我在这里做错了还是删除请求中缺少步骤?
解决方案
推荐阅读
- reactjs - React 16.8.6 + react 数据表错误 TypeError: Object(...) is not a function
- python - Tensorflow 数据集将图像分割成图块
- apache-nifi - Apache NiFi DBCPConnectionPool ORA-00933:SQL 命令未正确结束“从双重选择 1;”
- javascript - 如何获取 img 的下一个 id
- c++ - 在多参数情况下使用转换构造函数
- javascript - 粘性辅助滚动条
- git - 无法将凭据添加到 Jenkins Bitbucket 分支源插件
- swift - 我不断收到可可豆荚和安装 fireBase 的错误
- python - 如何使用 python pandas 打印相关特征?
- flutter - Flutter 网页自定义 url 方案?