

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# HTTP/HTTPS 通知 JSON 格式
<a name="http-notification-json"></a>

当 Amazon SNS 向已订阅的 HTTP 或 HTTPS 终端节点发送一条通知时，发送到终端节点的 POST 消息具有包含一个带下列名称/值对的 JSON 格式文档的消息正文。

**`Type`**  
消息类型。用于通知，这种类型属于`Notification`。

**`MessageId`**  
通用唯一标识符（UUID），它对于每条发布的消息是唯一的。对于 Amazon SNS 在重试期间重新发送的通知，使用原始消息的消息 ID。

**`TopicArn`**  
此消息所发布到的主题的 Amazon 资源名称（ARN）。

**`Subject`**  
在将通知发布至主题时指定的 `Subject` 参数。  
此参数为可选参数。如果未指定 `Subject`，则此 JSON 格式文档中不会显示该名称/值对。

**`Message`**  
当通知发布至主题时指定的 `Message` 值。

**`Timestamp`**  
通知发布的时间 (GMT)。

**`SignatureVersion`**  
所用 Amazon SNS 签名的版本。  
+ 如果 `SignatureVersion` 为 **1**，则 `Signature` 是 `Message`、`MessageId`、`Subject`（如果存在）、`Type`、`Timestamp` 和 `TopicArn` 值的 Base64 编码 `SHA1withRSA` 签名。
+ 如果 `SignatureVersion` 为 **2**，则 `Signature` 是 `Message`、`MessageId`、`Subject`（如果存在）、`Type`、`Timestamp` 和 `TopicArn` 值的 Base64 编码 `SHA256withRSA` 签名。

**`Signature`**  
`Message`、`MessageId`、`Subject`（如果存在）、`Type`、`Timestamp` 和 `TopicArn` 值的 Base64 编码 `SHA1withRSA` 或 `SHA256withRSA` 签名。

**`SigningCertURL`**  
用于签署消息的证书的 URL。

**`UnsubscribeURL`**  
可以用作从主题取消订阅终端节点的 URL。如果您访问此 URL，那么 Amazon SNS 将取消订阅终端节点并不发送通知至此终端节点。

以下 HTTP POST 消息是发送至 HTTP 端点的一条 `Notification` 消息的示例。

```
POST / HTTP/1.1
x-amz-sns-message-type: Notification
x-amz-sns-message-id: 22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324
x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic
x-amz-sns-subscription-arn: arn:aws:sns:us-west-2:123456789012:MyTopic:c9135db0-26c4-47ec-8998-413945fb5a96
Content-Length: 773
Content-Type: text/plain; charset=UTF-8
Host: myhost.example.com
Connection: Keep-Alive
User-Agent: Amazon Simple Notification Service Agent

{
  "Type" : "Notification",
  "MessageId" : "22b80b92-fdea-4c2c-8f9d-bdfb0c7bf324",
  "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic",
  "Subject" : "My First Message",
  "Message" : "Hello world!",
  "Timestamp" : "2012-05-02T00:54:06.655Z",
  "SignatureVersion" : "1",
  "Signature" : "EXAMPLEw6JRN...",
  "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem",
  "UnsubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-west-2:123456789012:MyTopic:c9135db0-26c4-47ec-8998-413945fb5a96"
  }
```