开发者控制台

使用实时通知

使用实时通知

此页面介绍了如何在开发者控制台中设置实时通知(RTN)。

设置实时通知

请按照以下步骤在亚马逊应用商店开发者控制台中设置RTN。

  1. 登录开发者控制台。
  2. 亚马逊应用商店部分中,选择应用程序列表
  3. 应用程序列表页面中选择您的应用。
  4. 从边栏中选择应用服务,然后找到实时通知部分。
  5. 选择添加终端节点
  6. 用于接收亚马逊应用商店通知的URL中输入您应用的HTTPS终端节点。
  7. 单击提交

提交应用的终端节点后,亚马逊将验证该URL,然后向您的应用服务器发送确认消息。您需要处理该确认消息,以便接收实时通知。有关更多详细信息,请参阅下面的处理通知消息

更改RTN终端节点

可以更改用于接收应用RTN订阅的终端节点。在开发者控制台中查找当前RTN订阅。转到应用与服务>我的应用程序,选择您的应用,然后单击应用服务。按照以下步骤编辑实时通知:

  1. 单击实时通知部分中的添加终端节点,然后单击编辑
  2. 选择添加新URL,或选择之前已注册的终端节点。
  3. 单击提交

现在正在验证您的新终端节点。您将继续在之前的终端节点接收实时通知,直至新终端节点验证完毕。亚马逊将验证该URL,然后向您的应用服务器发送一条“订阅确认”消息。您需要处理该确认消息,以便接收实时通知。有关更多详细信息,请参阅下面的处理通知消息

一经验证,您将开始在新终端节点接收通知。

删除实时通知

可以删除用于接收应用实时通知的终端节点。在开发者控制台中查找当前RTN订阅。转到应用与服务>我的应用程序,选择您的应用,然后单击应用服务。按照以下步骤编辑实时通知:

  1. 单击实时通知部分中的添加终端节点,然后单击编辑
  2. 找到相应的URL,然后选择删除
  3. 在显示的确认对话框中单击删除

处理通知消息

为防止发生欺骗攻击,必须对亚马逊签名进行验证,以核实消息的真实性。有关更多信息,请参阅Amazon SNS消息签名验证

如果您使用的是Amazon AWS SDK,则HTTPS POST和签名验证会由其为您处理。请参考以下代码片段。

如果未使用亚马逊AWS SDK,请遵循Amazon SNS消息签名验证中所述指南,处理HTTPS POST请求和签名验证步骤。

RTN确认消息

您在开发者控制台中添加用于接收RTN的终端节点后,亚马逊会向终端节点发送一条确认消息。

要处理该确认消息,请查找SubscribeURL值。向该URL提出HTTP GET请求,或在浏览器中手动访问该URL。

可以通过Amazon SNS自动确认RTN。收到SnsSubscriptionConfirmation消息后,使用DefaultSnsMessageHandler自动确认RTN。DefaultSnsMessageHandler将实施所有消息类型,SnsNotification除外。有关SNS消息的更多信息,请参阅Amazon SNS文档

通知

您的终端节点需要向该POST请求返回200响应代码状态。如果无法访问您的服务器,或返回4xx代码,则不会重试该消息。

如果您的终端节点未在15秒超时限制内做出响应,或返回2004xx代码之外的响应,则视为消息递送失败并将重试该消息。