使用WhatsApp Business API发消息遇400错误(#100):字段访问异常求助
问题分析与解决方法
错误原因
这个HTTP 400错误的核心原因是请求方法不正确:
当使用GET请求访问/NUMBER_ID/messages端点时,Graph API会将messages视为WhatsAppBusinessPhoneNumber节点的字段来查询,但该节点并不存在这个字段,因此抛出(#100) Tried accessing nonexisting field (messages)错误。
同时需要排查以下次要可能性:
- 使用的
NUMBER_ID不是Meta后台分配的WhatsApp Business号码ID(注意不是手机号) - Access Token缺少
whatsapp_business_messaging权限
解决方法
切换为POST请求
发送消息必须使用POST方法,而非GET。正确请求示例如下:- 请求URL:
https://graph.facebook.com/v17.0/NUMBER_ID/messages?access_token=ACCESS_TOKEN - 请求Body:
{ "messaging_product": "whatsapp", "to": "5**39&&&&&&1", "type": "template", "template": { "name": "hello_world", "language": { "code": "en_US" } } }
- 请求URL:
验证NUMBER_ID正确性
登录Meta Business Manager,进入WhatsApp Business账号设置页面,确认使用的NUMBER_ID是系统分配的专属ID,而非你的手机号。检查Access Token权限
确认Access Token已拥有whatsapp_business_messaging权限,若为正式环境,需确保应用已通过Meta的权限审核。
内容的提问来源于stack exchange,提问作者lucassa-bit
相关产品推荐
相关产品推荐

