从 webhook 传入的 twilio 正文中没有消息
Posted
技术标签:
【中文标题】从 webhook 传入的 twilio 正文中没有消息【英文标题】:No message in incoming twilio body from webhook 【发布时间】:2019-06-01 15:37:10 【问题描述】:在我阅读的所有 twilio 文档和示例中,来自传入 sms webhook 的传入正文具有“消息”属性,但我得到的只是一个单一的、丑陋的字符串。
// incoming request
"body":"ToCountry=US&ToState=CA&SmsMessageSid=SMa40a4ba8fec941e6636ebd82aabxxx&NumMedia=0&ToCity=LAYTONVILLE&FromZip=45251&SmsSid=SMa40a4ba8fec941e6636ebd82aab1a080&FromState=OH&SmsStatus=received&FromCity=CINCINNATI&Body=message4321&FromCountry=US&To=%2B17074140303&ToZip=95417&NumSegments=1&MessageSid=SMa40a4ba8fec941e6636ebd82aab1a080&AccountSid=ACb237933f0f845f5cbe9fcbe67d3b604e&From=%2B15135057457&ApiVersion=2010-04-01",
...
我想要的是这个字段Body=message4321
,但我必须解析一个字符串才能这样做。
我觉得我做错了什么。为什么它看起来像查询参数?我通过输入我的电话号码来设置 webhook,然后在消息下显示“A message come in Webhook POST https://my-url”
【问题讨论】:
【参考方案1】:我猜 twilio 将表单作为类型发送:application/x-www-form-urlencoded。使用 qs npm 包是最简洁的解析方式。
qs.parse(queryString).Body;
【讨论】:
这完全正确。您可以像这样解析正文,或者如果您使用的是 express,请查看使用body-parser
自动解析传入的请求正文。以上是关于从 webhook 传入的 twilio 正文中没有消息的主要内容,如果未能解决你的问题,请参考以下文章
使用 Zapier Webhook 触发 Twilio 工作室流程
获取 Particle Photon 和 Twilio 之间的 webhook
如何使用 Google 工作表脚本将 twilio 控制台内的 sms webhook 中的功能切换为控制台中的另一个功能?