Подписаться на тему SNS и / или очередь SQS в golang? - PullRequest
0 голосов
/ 08 ноября 2018

Я знаю, как это сделать в Java, но я просто не могу понять это в Go.

Все, что я хочу сделать, это иметь способ обнаружить, что элемент был создан в корзине S3, а затем вызвать тему SNS, которая затем уведомляет меня о расположении файла в S3.

У кого-нибудь есть рабочий пример того, как я могу сделать это, если я нуждаюсь в подписке на тему SNS или очередь SNS? Потому что все, что я могу найти, это Java и Node. Я могу найти примеры публикации для go, но они мало полезны для моего варианта использования.

1 Ответ

0 голосов
/ 08 ноября 2018

Для использования SNS вам понадобится простая конечная точка HTTP / HTTPS для получения уведомлений SNS.Который разделен на две части (подтверждение подписки и обработка сообщений от конечной точки HTTP / HTTPS)

1.Подтвердите подписку Сделайте что-нибудь простое:

func confirmSubscription(subcribeURL string) {
    response, err := http.Get(subcribeURL)
    if err != nil {
        fmt.Printf("Unbale to confirm subscriptions")
    } else {
        fmt.Printf("Subscription Confirmed sucessfully. %d", response.StatusCode)
    }
}

2.Обработка сообщений от конечной точки HTTP / HTTPS

Анализирует тело запроса, в документах указано, как должно быть структурировано тело.

Источники:

https://docs.aws.amazon.com/sns/latest/dg/sns-http-https-endpoint-as-subscriber.html

https://github.com/viveksyngh/aws-sns-subscriber/blob/master/subscriber/subscriber.go

...