我已经设置了 AWS SNS 设置,主题为“A”。我正在使用 Http 订阅此 SNS 主题(手动使用 AWS 控制台在线和使用 Java 代码进行了尝试)。在这两种情况下,我得到的只是“待确认”。但是,SNS 不会向提供的 Url 发送初始的“订阅确认”。
请注意,我的端点已准备好接收 http POST 通知。当我从我身边手动执行 POST 时,我看到我的 servlet 正在处理我发送的那些 Json。出于某种原因,我没有从 AWS SNS 收到任何信息。
请注意,我用于订阅的 http 端点面向公众,因此 SNS 到达它应该没有问题。
任何输入表示赞赏。
这是我的订阅功能。
public String subscribe(String arn,String url) {
if(arn == null || arn.isEmpty())
arn = topicArn;
SubscribeRequest subRequest = new SubscribeRequest(arn,"http",url);
SubscribeResult result = snsClient.subscribe(subRequest);
//get request id for SubscribeRequest from SNS metadata
if(result != null){
LOGGER.info("SubscribeResult - " + result.toString());
}
LOGGER.info("SubscribeRequest - " + snsClient.getCachedResponseMetadata(subRequest));
return …Run Code Online (Sandbox Code Playgroud)