Amazon web services AWS SNS HTTP订阅未调用终结点

Amazon web services AWS SNS HTTP订阅未调用终结点,amazon-web-services,amazon-sns,localstack,Amazon Web Services,Amazon Sns,Localstack,我已经在我的开发机器中部署了AWS SNS,现在我正在尝试使用我从awslocal CLI发出的消息,基本上这是一个针对我的本地堆栈infra的AWS 首先,我创建了一个主题: $ awslocal sns create-topic --name my-topic 然后,我创建了一个针对http://localhost:8080/sns/publish: 我有一台服务器运行在端口8080的localhost上,具有POST/sns/publish端点。应该调用它以确认订阅。但从来没有人打过电话

我已经在我的开发机器中部署了AWS SNS,现在我正在尝试使用我从awslocal CLI发出的消息,基本上这是一个针对我的本地堆栈infra的AWS

首先,我创建了一个主题:

$ awslocal sns create-topic --name my-topic
然后,我创建了一个针对http://localhost:8080/sns/publish:

我有一台服务器运行在端口8080的localhost上,具有POST/sns/publish端点。应该调用它以确认订阅。但从来没有人打过电话

我有一些线索。我已经使用Docker部署了Localstack。在检查容器日志后,我看到了以下错误:

2018-07-02T10:20:03:INFO:werkzeug: 127.0.0.1 - - [02/Jul/2018 10:20:03] "POST /sns/publish HTTP/1.1" 405 -
HTTP错误405对应于Method Not Allowed错误,所以它可能试图调用容器端点而不是主机的端点


如何解决此问题?

已解决。这是一个IP解决问题,因为Docker网络

我已经创建了一个子网:

docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 mynet
并根据192.168.9.1而不是本地主机订阅SNS:


完成了

不工作。获取错误2020-10-13T10:13:22:信息:localstack.services.sns.sns_侦听器:在发送sns消息时收到错误,如果已配置,则将其放入DLQ:MyHTTPConnectionPoolhost='127.0.0.1',port=9000:url超过最大重试次数:/sns/由NewConnectionError引起:未能在Mac上建立新连接:[Errno 111]连接被拒绝,通过将reserved host.docker.internal设置为通知端点,我可以使其正常工作。
docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 mynet
$ awslocal sns subscribe --topic-arn "arn:aws:sns:us-east-1:123456789012:my-topic" --protocol http --notification-endpoint http://192.168.0.1:8080/sns/publish