amazon-web-services - 如何调试我的 SNS 订阅?

标签 amazon-web-services ssl amazon-sns lets-encrypt

我已经创建了一个基本的 SNS 主题。这是一个 HTTP(和 HTTPS)请求我的网络服务器上的端点。 Web 服务器不在 AWS 上。

SNS 订阅指向的端点向我发送一封电子邮件,其中包含请求的所有 header 。即使标题为空,也会发送电子邮件。任何类型的请求都会产生一封电子邮件。

无论使用何种 HTTP 谓词(GET、POST 等),端点都会处理请求。

如果我在浏览器中访问端点,我会收到一封电子邮件。当我尝试在 AWS 控制面板中请求确认时,我什么也没得到。

我认为这可能是我使用 Let's Encrypt SSL 造成的,但我也尝试过使用 HTTP 端点而不是 HTTPS,但遇到了同样的问题。

我该如何调试它?有什么方法可以查看请求失败的原因吗?

最佳答案

当我需要调试 http web hooks 之类的时候,我会使用这个工具:

https://ngrok.com/

设置一个指向我的本地 Web 服务器的公共(public)端点,我在我的开发环境中运行它,所以我可以看到请求进来,并且根据语言(对我来说通常是 .net),我可以一步在我的调试器中收到请求时通过代码。您需要暂时将您的 sns 主题指向此端点。

如果您根本没有收到请求,这将无济于事,但如果对收到的请求有任何疑问,但未正确处理,这可能会有所帮助。

关于amazon-web-services - 如何调试我的 SNS 订阅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49118947/

相关文章:

aws-lambda - 在 Lambda 运行时代码中引用 ARN(在 CDK 堆栈中创建)

java - 使用自定义版本 ID 将对象上传到 Amazon S3

php - HTTPS 错误 - 您无权访问此服务器上的/index.php

ios - 通过 AWS SNS 发送和接收推送通知

ios - 为什么在发送任何 SSL 消息之前我的 SSL 握手失败?

android - Cloudflare 破解了 Android SSL

amazon-web-services - 为什么SNS没有触发我的lambda?

amazon-web-services - 使用 AWSTask,如何将 block 声明为变量

python - 如何检查 AWS S3 存储桶是否存在?

php - AWS SQS 错误 : SignatureDoesNotMatch HTTP error: 403