微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何修复 Twilio 称为我的 webhook 的 403 错误?

如何解决如何修复 Twilio 称为我的 webhook 的 403 错误?

我们正在使用 Twilio。我们设置了网络钩子,以便在 Twilio 接到电话时,将其转发到我们网站上的 URL。

这似乎工作正常。但是现在我对代码进行了更改,突然 Twilio 在调用 webhook 时遇到了问题。我们没有收到该消息,如果我查看 Twilio 日志,它会显示出现 403 错误。 (我不能发誓这从来没有发生过。我从来没有注意到一条消息丢失,但也许我在调试其他错误时错过了它,将丢失的消息归因于其他东西。)

真正奇怪的部分是,大约 2/3 的传入消息被接收并处理得很好,但大约 1/3 得到 403 错误。这是在我们没有任何负载平衡的测试服务器上,因此所有请求都将发送到我们应用程序的同一个实例。我今天做的测试都是从同一个手机到同一个 Twilio 号码。

我们确实对应用有授权,但授权都是在子目录上,而不是顶级,而且我们的网络钩子所在的子目录没有设置授权。

我们的网络钩子在被调用时所做的第一件事就是向我发送一封电子邮件,其中包含来自 Twilio 的消息内容。 (出于调试目的。)我没有收到那封电子邮件,所以我非常确信它没有被调用。正如我所说,我可以查看 Twilio 的日志,它说它收到了短信,并在尝试将其转发到我的 webhook 时遇到了 403 错误

它只有 1/3 的时间这一事实尤其令人费解。它来自同一个号码,到同一个号码,在同一个站点上访问完全相同的 URL。为什么有时会起作用,有时却不起作用?

我试图通过直接调用 URL 而不是通过 Twilio 在我的桌面上重现该问题,但并没有出现相同的错误。 (我在输入时想到下一个逻辑测试是在不通过 Twilio 的情况下点击服务器上的页面。)

哦,服务器是 ASP.NET。代码在 VB 中,但我怀疑这是否重要,因为当它失败时我们没有执行任何代码。当它没有得到 403 时,代码工作正常。

解决方法

检查您的防火墙配置,因为它可能会阻止请求。

如果是,则白名单来自 Twilio 的请求。

我们正在使用 AWS WAF 并遇到了类似的情况:我们在 Twilio 调试器中看到请求出错并显示 403,但请求从未到达我们的端点。一旦我们调整了白名单,问题就消失了。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。