As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Entrega de mensagens brutas do Amazon SNS
Para evitar que os endpoints HTTP/S, do Amazon Data Firehose e do Amazon SQS processem a formatação JSON das mensagens, o Amazon SNS permite a entrega de mensagens brutas:
-
Ao habilitar a entrega de mensagens brutas para um endpoint do Amazon Data Firehose ou do Amazon SQS, todos os metadados do Amazon SNS são removidos da mensagem publicada e a mensagem é enviada como está.
-
Quando você habilita a entrega de mensagens brutas para endpoints HTTP/S, o cabeçalho HTTP
x-amz-sns-rawdelivery
com o valor definido comotrue
é adicionado à mensagem, indicando que a mensagem foi publicada sem formatação JSON. -
Quando você habilita a entrega de mensagens brutas para endpoints HTTP/S, o corpo da mensagem, o IP do cliente e os cabeçalhos necessários são entregues. Quando você especifica atributos de mensagem, ela não é enviada.
-
Quando você habilita a entrega de mensagens brutas para endpoints do Firehose, o corpo da mensagem é entregue. Quando você especifica atributos de mensagem, ela não é enviada.
Para habilitar a entrega de mensagens brutas usando um AWS SDK, você deve usar a ação da SetSubscriptionAttribute
API e definir o valor do RawMessageDelivery
atributo comotrue
.
Habilitar a entrega de mensagens brutas usando o AWS Management Console
Faça login no console do Amazon SNS
. -
No painel de navegação, escolha Tópicos.
-
Na página Tópicos, escolha um tópico assinado para um endpoint HTTP/S, do Firehose ou do Amazon SQS.
-
Na
MyTopic
página, na seção Assinatura, escolha uma assinatura e escolha Editar. -
Na
EXAMPLE1-23bc-4567-d890-ef12g3hij456
página Editar, na seção Detalhes, escolha Habilitar entrega de mensagens brutas. -
Escolha Salvar alterações.
Exemplos de formatos de mensagens
Nos exemplos a seguir, a mesma mensagem é enviada para a mesma fila do Amazon SQS duas vezes. A única diferença é que a entrega de mensagens brutas está desabilitada para a primeira mensagem e habilitada para a segunda.
-
Entrega de mensagens brutas desabilitada
{ "Type": "Notification", "MessageId": "dc1e94d9-56c5-5e96-808d-cc7f68faa162", "TopicArn": "arn:aws:sns:us-east-2:111122223333:ExampleTopic1", "Subject": "TestSubject", "Message": "This is a test message.", "Timestamp": "2021-02-16T21:41:19.978Z", "SignatureVersion": "1", "Signature": "FMG5tlZhJNHLHUXvZgtZzlk24FzVa7oX0T4P03neeXw8ZEXZx6z35j2FOTuNYShn2h0bKNC/zLTnMyIxEzmi2X1shOBWsJHkrW2xkR58ABZF+4uWHEE73yDVR4SyYAikP9jstZzDRm+bcVs8+T0yaLiEGLrIIIL4esi1llhIkgErCuy5btPcWXBdio2fpCRD5x9oR6gmE/rd5O7lX1c1uvnv4r1Lkk4pqP2/iUfxFZva1xLSRvgyfm6D9hNklVyPfy+7TalMD0lzmJuOrExtnSIbZew3foxgx8GT+lbZkLd0ZdtdRJlIyPRP44eyq78sU0Eo/LsDr0Iak4ZDpg8dXg==", "SigningCertURL": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-010a507c1833636cd94bdb98bd93083a.pem", "UnsubscribeURL": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:111122223333:ExampleTopic1:e1039402-24e7-40a3-a0d4-797da162b297" }
-
Entrega de mensagens brutas habilitada
This is a test message.
Atributos de mensagem e entrega de mensagens brutas para assinaturas do Amazon SQS
O Amazon SNS oferece suporte à entrega de atributos de mensagem, o que permite que você forneça itens de metadados estruturados, como time stamps, dados geoespaciais, assinaturas e identificadores sobre a mensagem. Para assinaturas Amazon SQS, com Entrega de mensagens brutas habilitado, no máximo dez atributos de mensagem podem ser enviados. Para enviar mais de dez atributos de mensagem, é necessário desabilitar Entrega de mensagens brutas. Porém, o Amazon SNS descarta mensagens com mais de 10 atributos de mensagem direcionadas para assinaturas do Amazon SQS com Entrega de mensagens brutas habilitadas, tratando elas como erros do lado do cliente.