twilio - 从 webhook 传入的 twilio 正文中没有消息
问题描述
在我读过的所有 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 ”
解决方案
我猜 twilio 将表单作为类型发送:application/x-www-form-urlencoded。使用 qs npm 包是最简洁的解析方式。
qs.parse(queryString).Body;
推荐阅读
- web-deployment - 雨果:不要发布以后的帖子
- node.js - 自动初始化 node.js 应用程序中的数据
- java - 工厂设计的实现,在 Spring Boot 中遇到了这个错误
- java - TestNG : dataProvider 一次迭代后进入下一个测试
- r - 如何将数据框添加到列表并从用户编写的函数中命名它们
- r - 交叉引用存储在列中的列表与存储在 R 中另一个数据框中的列表
- reactjs - 根据分支名称设置环境变量(REACT_APP_BASE_URL)值/与 dockerfile 反应
- google-cloud-firestore - 如何查询firestore db并返回过滤值
- javascript - 在 Shopify 商店中阻止第三方 URL 或检查员
- javascript - 当您不知道宽度时从左侧滑入