使用 Azure 部署的应用发送网格入站分析失败



我创建了一个简单的 ASP.NET Web API应用程序,该应用程序从SendGrid接收解析的电子邮件。使用带有 ngrok 的安全隧道在我的机器上运行良好。电子邮件的解析内容将发布到本地托管的应用程序。

但是,当我将此应用程序部署到 Azure 时,它不起作用。我尝试在SendGrid中同时使用HTTP和HTTPS作为回调URL,但电子邮件未被处理。在 SendGrid 的"活动"页面中,没有"已分析"电子邮件的条目。我收到一封传递失败的电子邮件,该电子邮件本应由SendGrid处理。

响应为:550 当前没有该名称的邮箱可用

我知道该应用程序是可以访问的,因为我可以从浏览器或其他工具成功向其他资源执行HTTP请求。

我可能错过了什么吗?一些额外的配置,无论是针对应用程序还是在 SendGrid 中?

简短的回答是这样的:

  • 如果您将CloudFlare用于DNS,CloudFlare很可能会阻止来自SendGrid的入站解析帖子。

  • 在CloudFlare(在"防火墙"选项卡下)中查看防火墙事件日志,并查看Web API"主机"是否显示在那里。

  • 如果是这样,您需要做的是将 SendGrid 用于发送入站解析帖子的 IP 地址范围列入白名单。

  • 截至今天,他们当前入站解析的 IP 范围为 167.89.117.0
  • /24(基本上是从 167.89.117.0 到 167.89.117.255 的 IP 地址)。

希望这对您或其他人有同样的问题/根本原因有所帮助。

最新更新