繁体   English   中英

在 golang 中订阅 SNS 主题和/或 SQS 队列?

[英]Subscribe to an SNS topic and / or SQS queue in golang?

我知道如何在 Java 中执行此操作,但我根本无法在 Go 中弄清楚。

我想要做的就是有一种方法来检测在 S3 存储桶中创建的项目,然后触发 SNS 主题,然后通知我 S3 中的文件位置。

如果我需要订阅 SNS 主题或 SNS 队列,是否有人有一个工作示例,说明我如何执行此操作? 因为我似乎只能找到 Java 和 Node.js。 我可以找到 go 的发布示例,但它们对我的用例几乎没有用。

要使用 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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM