【问题标题】:How do you use the Twilio Node SDK to validate webhook requests?您如何使用 Twilio Node SDK 来验证 webhook 请求?
【发布时间】:2020-02-11 16:56:34
【问题描述】:

我正在尝试按照https://www.twilio.com/docs/usage/tutorials/how-to-secure-your-express-app-by-validating-incoming-twilio-requests 此处的文档将 Twilio Node SDK 与我的 Express 应用程序一起使用,以验证对我的 webhook 端点的请求实际上来自 Twilio。

我在生产环境中设置了 TWILIO_AUTH_TOKEN 环境变量,并且我的 webhook 端点定义如下:

router.post(
  "/foo",
  twilio.webhook(),
  async (req, res) => {
    ...
  }

但是,当我向触发 webhook 的 Twilio 号码发送 SMS 时,它会返回 403。通过检查 Twilio 控制台中的调试器,响应正文是 Twilio Request Validation Failed

不太确定我在这里做错了什么,因为文档使它听起来相当简单。如果我删除 twilio.webhook() 行,一切都会按预期工作。 Webhook 端点是 https,我在我的 Twilio 帐户中启用了 SSL 证书验证。

【问题讨论】:

    标签: twilio twilio-api


    【解决方案1】:

    我最终通过按照 Twilio 安全指南中的步骤自己生成哈希并将其与 x-twilio-signature 标头进行比较来完成此操作。我唯一的猜测是 Twilio Node SDK 有问题。

    【讨论】:

      【解决方案2】:

      只需向您的号码发送短信,它不希望通过 http 发送请求,而是来自 Twilio(当您的号码收到短信并且 Twilio 调用 webhook 时)

      【讨论】:

        猜你喜欢
        • 2021-12-21
        • 1970-01-01
        • 1970-01-01
        • 2016-11-03
        • 1970-01-01
        • 1970-01-01
        • 2011-05-16
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多