AWS SNS 不发送 HTTP 订阅确认
AWS SNS not sending subscription confirmation for HTTP
我正在尝试设置基本的 SNS 订阅,但看起来 AWS 从未通过控制台或使用 SDK 发送确认。
到目前为止我已采取的步骤:
- 我已经使用 AWS 控制台设置了一个主题
- 我已经使用 AWS 控制台和 ruby SDK[= 添加了 HTTP 订阅到 ngrok 隧道 URL 和 public 网络服务器 URL 25=]
- 我已通过在 AWS 控制台中编辑主题策略允许所有人订阅主题
通过跟踪我的本地主机和 public 网络服务器上的日志,我可以看到没有任何请求被发送到端点。
我在这里很困惑,因为它似乎肯定可以正常工作,或者至少可以向我的端点发送一些东西(任何东西)?
我为 ruby sdk 使用的代码如下:
sns = AWS::SNS.new(access_key_id: ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'])
# I only have one topic
topic = sns.topics.first
topic.subscribe(URI.parse('http://<NGROK_URL>.ngrok.com/notifications/notify'))
topic.subscriptions.first
# returns: => <AWS::SNS::Subscription arn:PendingConfirmation>
这原来是一个与我工作所在地区有关的问题。我换到了俄勒冈州,所有确认信息都会立即发送。
一定是某处设置了一些权限,阻止您从某些区域发送任何消息,但它无声无息地失败了。
对我来说,它似乎可能不是区域(尽管我也在尝试 us-east-1),而是 ngrok 的网络设置方式。我使用了不同的站点转发服务 (finch),并且完全成功。这 AWS forum topic 让人觉得问题也可能是间歇性的。
我正在尝试设置基本的 SNS 订阅,但看起来 AWS 从未通过控制台或使用 SDK 发送确认。
到目前为止我已采取的步骤:
- 我已经使用 AWS 控制台设置了一个主题
- 我已经使用 AWS 控制台和 ruby SDK[= 添加了 HTTP 订阅到 ngrok 隧道 URL 和 public 网络服务器 URL 25=]
- 我已通过在 AWS 控制台中编辑主题策略允许所有人订阅主题
通过跟踪我的本地主机和 public 网络服务器上的日志,我可以看到没有任何请求被发送到端点。
我在这里很困惑,因为它似乎肯定可以正常工作,或者至少可以向我的端点发送一些东西(任何东西)?
我为 ruby sdk 使用的代码如下:
sns = AWS::SNS.new(access_key_id: ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'])
# I only have one topic
topic = sns.topics.first
topic.subscribe(URI.parse('http://<NGROK_URL>.ngrok.com/notifications/notify'))
topic.subscriptions.first
# returns: => <AWS::SNS::Subscription arn:PendingConfirmation>
这原来是一个与我工作所在地区有关的问题。我换到了俄勒冈州,所有确认信息都会立即发送。
一定是某处设置了一些权限,阻止您从某些区域发送任何消息,但它无声无息地失败了。
对我来说,它似乎可能不是区域(尽管我也在尝试 us-east-1),而是 ngrok 的网络设置方式。我使用了不同的站点转发服务 (finch),并且完全成功。这 AWS forum topic 让人觉得问题也可能是间歇性的。