Menguraikan format pesan - Amazon Simple Notification Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menguraikan format pesan

Amazon SNS menggunakan format berikut.

Header HTTP/HTTPS

Saat mengirimkan konfirmasi berlangganan, notifikasi, atau pesan konfirmasi berhenti berlangganan untuk titik akhir HTTP/HTTPS, Amazon SNS mengirimkan pesan POST dengan sejumlah nilai header yang spesifik Amazon SNS. Anda dapat menggunakan nilai-nilai header untuk tugas-tugas seperti mengidentifikasi jenis pesan tanpa harus mengurai isi JSON untuk membacaType nilai. Secara default, Amazon SNS mengirimkan semua notifikasi ke titik akhir HTTP/S denganContent-Type disetel ketext/plain; charset=UTF-8. Untuk memilihContent-Type selain teks/polos (default), lihatheaderContentType diMembuat kebijakan pengiriman HTTP/S.

x-amz-sns-message-type

Jenis pesan. Nilai yang mungkin adalah SubscriptionConfirmation, Notification, dan UnsubscribeConfirmation.

x-amz-sns-message-id

Pengidentifikasi Unik Universal, yang unik untuk setiap pesan yang dipublikasikan. Untuk notifikasi bahwa Amazon SNS mengirimkan ulang selama percobaan kembali, ID pesan dari pesan asli digunakan.

x-amz-sns-topic-arn

Amazon Resource Name (ARN) untuk topik tempat pesan ini diterbitkan.

x-amz-sns-subscription-arn

ARN untuk langganan ke titik akhir ini.

Header HTTP POST berikut adalah contoh header untuk sebuahNotification pesan ke titik akhir HTTP.

POST / HTTP/1.1 x-amz-sns-message-type: Notification x-amz-sns-message-id: 165545c9-2a5c-472c-8df2-7ff2be2b3b1b 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:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55 Content-Length: 1336 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent

Format JSON konfirmasi berlangganan HTTP/HTTPS

Setelah Anda melanggankan HTTP/HTTPS titik akhir, Amazon SNS mengirimkan pesan konfirmasi berlangganan ke titik akhir HTTP/HTTPS. Pesan ini berisiSubscribeURL nilai yang harus Anda kunjungi untuk mengonfirmasi langganan (sebagai alternatif, Anda dapat menggunakanToken nilai dengan ConfirmSubscription).

catatan

Amazon SNS

Pesan konfirmasi berlangganan adalah pesan POST dengan isi pesan yang berisi dokumen JSON dengan pasangan nama-nilai berikut.

Type

Jenis pesan. Untuk konfirmasi berlangganan, tipenya adalah SubscriptionConfirmation.

MessageId

Pengidentifikasi Unik Universal, yang unik untuk setiap pesan yang dipublikasikan. Untuk pesan yang dikirim ulang Amazon SNS selama mencoba lagi, ID pesan dari pesan asli digunakan.

Token

Nilai yang dapat Anda gunakan dengan ConfirmSubscriptiontindakan untuk mengonfirmasi langganan. Atau, Anda dapat mengunjungi SubscribeURL.

TopicArn

Amazon Resource Name (ARN) untuk topik yang dilanggan titik akhir ini.

Message

String yang menggambarkan pesan. Untuk konfirmasi berlangganan, string ini terlihat seperti ini:

You have chosen to subscribe to the topic arn:aws:sns:us-east-2:123456789012:MyTopic.\nTo confirm the subscription, visit the SubscribeURL included in this message.
SubscribeURL

URL yang harus Anda kunjungi untuk mengonfirmasi langganan. Sebagai alternatif, Anda dapat menggunakan ConfirmSubscriptiontindakan untuk mengonfirmasi langganan.Token

Timestamp

Waktu (GMT) saat konfirmasi berlangganan dikirim.

SignatureVersion

Versi tanda tangan Amazon SNS yang digunakan.

  • JikaSignatureVersion is 1,Signature adalahSHA1withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Type,Timestamp, danTopicArn nilai-nilai.

  • JikaSignatureVersion adalah 2,Signature adalahSHA256withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Type,Timestamp, danTopicArn nilai-nilai.

Signature

Base64 dikodekanSHA1withRSA atauSHA256withRSA tanda tangan dariMessageMessageId,Type,Timestamp,, danTopicArn nilai-nilai.

SigningCertURL

URL untuk sertifikat yang digunakan untuk menandatangani pesan.

Pesan HTTP POST berikut adalah contohSubscriptionConfirmation pesan ke titik akhir HTTP.

POST / HTTP/1.1 x-amz-sns-message-type: SubscriptionConfirmation x-amz-sns-message-id: 165545c9-2a5c-472c-8df2-7ff2be2b3b1b x-amz-sns-topic-arn: arn:aws:sns:us-west-2:123456789012:MyTopic Content-Length: 1336 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "SubscriptionConfirmation", "MessageId" : "165545c9-2a5c-472c-8df2-7ff2be2b3b1b", "Token" : "2336412f37...", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Message" : "You have chosen to subscribe to the topic arn:aws:sns:us-west-2:123456789012:MyTopic.\nTo confirm the subscription, visit the SubscribeURL included in this message.", "SubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:123456789012:MyTopic&Token=2336412f37...", "Timestamp" : "2012-04-26T20:45:04.751Z", "SignatureVersion" : "1", "Signature" : "EXAMPLEpH+DcEwjAPg8O9mY8dReBSwksfg2S7WKQcikcNKWLQjwu6A4VbeS0QHVCkhRS7fUQvi2egU3N858fiTDN6bkkOxYDVrY0Ad8L10Hs3zH81mtnPk5uvvolIC1CXGu43obcgFxeL3khZl8IKvO61GWB6jI9b5+gLPoBc1Q=", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem" }

Format JSON notifikasi HTTP/HTTPS

Saat Amazon SNS mengirimkan notifikasi ke titik akhir HTTP atau HTTPS langganan, pesan POST yang dikirim ke titik akhir memiliki isi pesan yang berisi dokumen JSON dengan pasangan nama-nilai berikut.

Type

Jenis pesan. Untuk notifikasi, jenisnya adalah Notification.

MessageId

Pengidentifikasi Unik Universal, yang unik untuk setiap pesan yang dipublikasikan. Untuk notifikasi bahwa Amazon SNS mengirimkan ulang selama percobaan kembali, ID pesan dari pesan asli digunakan.

TopicArn

Amazon Resource Name (ARN) untuk topik tempat pesan ini diterbitkan.

Subject

SubjectParameter yang ditentukan saat notifikasi dipublikasikan ke topik.

catatan

Ini adalah parameter opsional. Jika tidakSubject ada yang ditentukan, maka pasangan nama-nilai ini tidak muncul dalam dokumen JSON ini.

Message

MessageNilai yang ditentukan saat notifikasi dipublikasikan ke topik.

Timestamp

Waktu (GMT) saat notifikasi dipublikasikan.

SignatureVersion

Versi tanda tangan Amazon SNS yang digunakan.

  • JikaSignatureVersion is 1,Signature adalahSHA1withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Subject (jika ada),Type,Timestamp, danTopicArn nilai-nilai.

  • JikaSignatureVersion adalah 2,Signature adalahSHA256withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Subject (jika ada),Type,Timestamp, danTopicArn nilai-nilai.

Signature

Base64 dikodekanSHA1withRSA atauSHA256withRSA tanda tangan dariMessageMessageId,,Subject (jika ada)Type,Timestamp,, danTopicArn nilai-nilai.

SigningCertURL

URL untuk sertifikat yang digunakan untuk menandatangani pesan.

UnsubscribeURL

URL yang dapat Anda gunakan untuk berhenti melanggankan titik akhir dari topik ini. Jika Anda mengunjungi URL ini, Amazon SNS berhenti melanggankan titik akhir dan berhenti mengirimkan notifikasi ke titik akhir ini.

Pesan HTTP POST berikut adalah contohNotification pesan ke titik akhir HTTP.

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" } }

Format JSON konfirmasi berhenti berlangganan HTTP/HTTPS

Setelah titik akhir HTTP/HTTPS berhenti dilanggankan dari topik, Amazon SNS mengirimkan pesan konfirmasi berhenti berlangganan ke titik akhir.

Pesan konfirmasi berhenti berlangganan adalah pesan POST dengan isi pesan yang berisi dokumen JSON dengan pasangan nama-nilai berikut.

Type

Jenis pesan. Untuk konfirmasi berhenti berlangganan, jenisnya adalah UnsubscribeConfirmation.

MessageId

Pengidentifikasi Unik Universal, yang unik untuk setiap pesan yang dipublikasikan. Untuk pesan yang dikirim ulang Amazon SNS selama mencoba lagi, ID pesan dari pesan asli digunakan.

Token

Nilai yang dapat Anda gunakan dengan ConfirmSubscriptiontindakan untuk mengonfirmasi ulang langganan. Atau, Anda dapat mengunjungi SubscribeURL.

TopicArn

Amazon Resource Name (ARN) untuk topik yang telah berhenti dilanggan titik akhir.

Message

String yang menggambarkan pesan. Untuk konfirmasi berhenti berlangganan, string ini terlihat seperti ini:

You have chosen to deactivate subscription arn:aws:sns:us-east-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55.\nTo cancel this operation and restore the subscription, visit the SubscribeURL included in this message.
SubscribeURL

URL yang harus Anda kunjungi untuk mengonfirmasi ulang langganan. Sebagai alternatif, Anda dapat menggunakan ConfirmSubscriptiontindakan untuk mengonfirmasi ulang langganan.Token

Timestamp

Waktu (GMT) saat konfirmasi berhenti berlangganan dikirim.

SignatureVersion

Versi tanda tangan Amazon SNS yang digunakan.

  • JikaSignatureVersion is 1,Signature adalahSHA1withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Type,Timestamp, danTopicArn nilai-nilai.

  • JikaSignatureVersion adalah 2,Signature adalahSHA256withRSA tanda tangan Base64 dikodekan dariMessage,MessageId,Type,Timestamp, danTopicArn nilai-nilai.

Signature

Base64 dikodekanSHA1withRSA atauSHA256withRSA tanda tangan dariMessageMessageId,Type,Timestamp,, danTopicArn nilai-nilai.

SigningCertURL

URL untuk sertifikat yang digunakan untuk menandatangani pesan.

Pesan HTTP POST berikut adalah contohUnsubscribeConfirmation pesan ke titik akhir HTTP.

POST / HTTP/1.1 x-amz-sns-message-type: UnsubscribeConfirmation x-amz-sns-message-id: 47138184-6831-46b8-8f7c-afc488602d7d 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:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55 Content-Length: 1399 Content-Type: text/plain; charset=UTF-8 Host: myhost.example.com Connection: Keep-Alive User-Agent: Amazon Simple Notification Service Agent { "Type" : "UnsubscribeConfirmation", "MessageId" : "47138184-6831-46b8-8f7c-afc488602d7d", "Token" : "2336412f37...", "TopicArn" : "arn:aws:sns:us-west-2:123456789012:MyTopic", "Message" : "You have chosen to deactivate subscription arn:aws:sns:us-west-2:123456789012:MyTopic:2bcfbf39-05c3-41de-beaa-fcfcc21c8f55.\nTo cancel this operation and restore the subscription, visit the SubscribeURL included in this message.", "SubscribeURL" : "https://sns.us-west-2.amazonaws.com/?Action=ConfirmSubscription&TopicArn=arn:aws:sns:us-west-2:123456789012:MyTopic&Token=2336412f37fb6...", "Timestamp" : "2012-04-26T20:06:41.581Z", "SignatureVersion" : "1", "Signature" : "EXAMPLEHXgJm...", "SigningCertURL" : "https://sns.us-west-2.amazonaws.com/SimpleNotificationService-f3ecfb7224c7233fe7bb5f59f96de52f.pem" }

SetSubscriptionAttributesFormat JSON

Jika Anda mengirimkan permintaan keSetSubscriptionAttributes tindakan dan mengaturAttributeName parameter ke nilaiDeliveryPolicy, nilaiAttributeValue parameter harus objek JSON yang valid. Sebagai contoh, contoh berikut menetapkan kebijakan pengiriman untuk 5 jumlah pengulangan.

http://sns.us-east-2.amazonaws.com/ ?Action=SetSubscriptionAttributes &SubscriptionArn=arn%3Aaws%3Asns%3Aus-east-2%3A123456789012%3AMy-Topic%3A80289ba6-0fd4-4079-afb4-ce8c8260f0ca &AttributeName=DeliveryPolicy &AttributeValue={"healthyRetryPolicy":{"numRetries":5}} ...

Gunakan Format JSON berikut untuk nilaiAttributeValue parameter.

{ "healthyRetryPolicy" : { "minDelayTarget" : int, "maxDelayTarget" : int, "numRetries" : int, "numMaxDelayRetries" : int, "backoffFunction" : "linear|arithmetic|geometric|exponential" }, "throttlePolicy" : { "maxReceivesPerSecond" : int }, "requestPolicy" : { "headerContentType" : "text/plain | application/json | application/xml" } }

Untuk informasi lebih lanjut tentangSetSubscriptionAttribute tindakan, kunjungi SetSubscriptionAttributesdi Amazon Simple Notification Service API Reference. Untuk informasi selengkapnya tentang header tipe konten HTTP yang didukung, lihatMembuat kebijakan pengiriman HTTP/S.

SetTopicAttributes Format JSON

Jika Anda mengirimkan permintaan keSetTopicAttributes tindakan dan mengaturAttributeName parameter ke nilaiDeliveryPolicy, nilaiAttributeValue parameter harus objek JSON yang valid. Sebagai contoh, contoh berikut menetapkan kebijakan pengiriman untuk 5 jumlah pengulangan.

http://sns.us-east-2.amazonaws.com/ ?Action=SetTopicAttributes &TopicArn=arn%3Aaws%3Asns%3Aus-east-2%3A123456789012%3AMy-Topic &AttributeName=DeliveryPolicy &AttributeValue={"http":{"defaultHealthyRetryPolicy":{"numRetries":5}}} ...

Gunakan Format JSON berikut untuk nilaiAttributeValue parameter.

{ "http" : { "defaultHealthyRetryPolicy" : { "minDelayTarget": int, "maxDelayTarget": int, "numRetries": int, "numMaxDelayRetries": int, "backoffFunction": "linear|arithmetic|geometric|exponential" }, "disableSubscriptionOverrides" : Boolean, "defaultThrottlePolicy" : { "maxReceivesPerSecond" : int }, "defaultRequestPolicy" : { "headerContentType" : "text/plain | application/json | application/xml" } } }

Untuk informasi lebih lanjut tentangSetTopicAttribute tindakan, kunjungi SetTopicAttributesdi Amazon Simple Notification Service API Reference. Untuk informasi selengkapnya tentang header tipe konten HTTP yang didukung, lihatMembuat kebijakan pengiriman HTTP/S.