Entrega de mensajes sin procesar de Amazon SNS - Amazon Simple Notification Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Entrega de mensajes sin procesar de Amazon SNS

Para evitar que los puntos de enlace Amazon Data Firehose, Amazon SQS y HTTP/S procesen el formato JSON de los mensajes, Amazon SNS permite la entrega de mensajes sin procesar:

  • Al habilitar la entrega de mensajes sin procesar para los puntos de enlace Amazon Data Firehose o Amazon SQS, los metadatos de Amazon SNS se eliminan del mensaje publicado y el mensaje se envía tal cual.

  • Cuando habilita la entrega de mensajes sin formato para los puntos de enlace HTTP/S, el encabezado HTTP x-amz-sns-rawdelivery con su valor establecido en true se agrega al mensaje, lo que indica que el mensaje se ha publicado sin formato JSON.

  • Cuando habilita la entrega de mensajes sin procesar para los puntos de conexión HTTP/S, se entregan el cuerpo del mensaje, la IP del cliente y los encabezados necesarios. Cuando especifica atributos de mensaje, no se enviará.

  • Al habilitar la entrega de mensajes sin procesar para los puntos finales de Firehose, se entrega el cuerpo del mensaje. Cuando especifica atributos de mensaje, no se enviará.

Para habilitar la entrega de mensajes sin procesar mediante un AWS SDK, debes usar la acción de la SetSubscriptionAttribute API y establecer el valor del RawMessageDelivery atributo en. true

Habilitación de la entrega de mensajes sin procesar mediante la AWS Management Console

  1. Inicie sesión en la consola de Amazon SNS.

  2. En el panel de navegación, elija Topics (Temas).

  3. En la página Temas, elige un tema suscrito a un punto de conexión Firehose, Amazon SQS o HTTP/S.

  4. En la MyTopicpágina, en la sección Suscripción, elige una suscripción y selecciona Editar.

  5. En la página Editar EXAMPLE1-23bc-4567-d890-ef12g3hij456, en la sección DetallesExida, elija Habilitar la entrega de mensajes sin procesar.

  6. Elija Guardar cambios.

Ejemplos de formato de mensajes

En los siguientes ejemplos, el mismo mensaje se envía dos veces a la misma cola de Amazon SQS. La única diferencia es que la entrega de mensajes sin procesar está desactivada para el primer mensaje y habilitada para el segundo.

  • La entrega de mensajes sin procesar está desactivada

    { "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" }
  • La entrega de mensajes sin procesar está habilitada

    This is a test message.

Atributos de los mensajes y entrega de mensajes sin procesar para las suscripciones a Amazon SQS

Amazon SNS admite la entrega de atributos de mensajes, lo que le permite proporcionar elementos de metadatos estructurados, como marcas de tiempo, datos geoespaciales, firmas e identificadores, sobre el mensaje. En el caso de las suscripciones a Amazon SQS con la entrega de mensajes sin procesar habilitada, se puede enviar un máximo de 10 atributos de mensaje. Para enviar más de 10 atributos de mensajes, debe deshabilitar la entrega de mensajes sin procesar. Sin embargo, Amazon SNS descarta los mensajes con más de 10 atributos de mensaje dirigidos a las suscripciones de Amazon SQS con la entrega de mensajes sin procesar habilitada y los trata como errores del lado del cliente.