Я развернул AWS SNS, используя Localstack на своем компьютере разработчика, и теперь я пытаюсь использовать сообщения, которые я посылаю из awslocal
CLI (в основном это aws
против моей локальной инфраструктуры Localstack). )
Сначала я создал тему:
$ awslocal sns create-topic --name my-topic
Затем я создал HTTP-подписку на http://localhost:8080/sns/publish
:
$ awslocal sns subscribe --topic-arn "arn:aws:sns:us-east-1:123456789012:my-topic" --protocol http --notification-endpoint http://localhost:8080/sns/publish
У меня есть сервер, работающий на localhost
в порту 8080
с конечной точкой POST /sns/publish
. Он должен быть вызван для подтверждения подписки. Но это никогда не называется.
У меня есть некоторые подсказки. Я развернул Localstack с помощью Docker. После проверки журналов контейнера я увидел эту ошибку:
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 ERROR 405 соответствует ошибке Method Not Allowed, поэтому, возможно, он пытается вызвать конечную точку контейнера вместо конечной точки моего хост-компьютера.
Как мне это решить?