如何解决使用Twilio通过POST发送消息,但不接受正文为JSON或XML,仅To,From和Body的普通参数有效
我使用的平台迫使我发送JSON格式或XML格式的主体的POST请求,因此要测试,我使用的是SOAPUI,因此我可以确切指定测试所需的主体。我正在发布到URL https://api.twilio.com/2010-04-01/Accounts/ACxxxxxxxxxxxxxxxxxxxx/Messages.json
的JSON正文
{
"Body": "hi dear","To": "+1631xxxxxxx","From": "82xxx"
}
但是会产生错误
{"code": 21604,"message": "A 'To' phone number is required.","more_info": "https://www.twilio.com/docs/errors/21604","status": 400}
但是如果SOAP主体是简单参数
To=%2B1631xxxxxxx&From=82xxx&Body=Hi%20Dear
消息已正确发送,我得到了Twilio的回复
{
"sid": "SMxxxxxxxxxxxxxxxxxxxxx","date_created": "Tue,06 Oct 2020 03:00:01 +0000","date_updated": "Tue,...
}
Twilio是否具有消息API,我可以使用格式化的JSON或XML正文进行发布。
解决方法
这里是Twilio开发人员的传播者。
Twilio API仅接受正文为application/x-www-form-urlencoded
或正文中提到的简单参数的请求。这是向Twilio API发出请求的唯一方法。
核心API将通过附加相关的后缀(.json
,如您所包括的.csv
或.html
)来响应XML(默认情况下)或可选的JSON,CSV和HTML。较新的API,例如productname.twilio.com/v1
等子域下的任何API,都只能使用JSON进行响应。
Twilio还提供6种不同语言的helper libraries,并且有社区维护的库,支持许多不受支持的语言,这些库应该抽象出请求的格式。
让我知道是否有帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。