AWS SNS未发送HTTP订阅确认

时间:2015-06-25 01:46:30

标签: ruby amazon-web-services amazon-sns aws-sdk

我正在尝试设置一个基本的SNS订阅,但看起来AWS从未通过控制台或使用SDK发送确认。

到目前为止我采取的步骤:

  • 我使用AWS控制台设置了主题
  • 我已使用AWS控制台和ruby SDK为ngrok隧道URL和公共Web服务器URL添加了HTTP订阅
  • 我允许每个人通过编辑AWS控制台中的主题政策来订阅主题

通过在我的localhost和公共Web服务器上拖尾日志,我可以看到没有请求发送到端点。

我在这里很难过,因为它似乎肯定会起作用,或者至少向我的终端发送一些东西(任何东西)?

我用于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>

2 个答案:

答案 0 :(得分:1)

这结果是与我工作的地区有关的问题。我改为俄勒冈州,所有确认都立即发送。

必须在某处设置某些权限,以防止您从某些地区发送任何消息,但它无声地失败。

答案 1 :(得分:0)

对我而言,似乎它可能不是该地区(虽然我也尝试了我们 - 东 - 1),但是如何设置ngrok的网络。我使用了不同的站点转发服务(finch)并且完全成功了。这个AWS forum topic让人觉得这个问题也可能是间歇性的。