Compatibilidad de actividades de API externas

Descripción

Entorno
Estándar de contenido

Problema/Síntomas
El extremo de la API de REST de terceros acepta el siguiente formato JSON para pasar los datos.

Carga útil real:

{"destination":"https://www.google.com/work/insights/123","domain":"google.com"}

Sin embargo, ACS modifica el formato JSON, que no es aceptado por el extremo de la API de REST de terceros.

Carga útil modificada:

{“data”:{"destination":"https://www.google.com/work/insights/123","domain":"google.com"}}

Resolución

Hay dos factores que influyeron en la decisión de usar el formato:

  1. La variable data solo se añade si hay una parte entrante tabla temporal generado por la actividad anterior y las filas de esa actividad tabla temporal se serializan en una JSON matriz. De ahí la necesidad de JSON property named data y los datos serializados enviados como una matriz utilizando .
  2. La actividad también permite enviar parámetros personalizados a la API, que se añaden a la carga útil mediante un params propiedad. Tenga en cuenta que se corrigen (se configuran una vez en la actividad durante el tiempo de creación).

Este formato normalizado nos permitió tener un formato fijo sin la compatibilidad de la interfaz de usuario para personalizar cómo aplicarlo según las especificaciones de API de terceros. La intención era utilizar una capa de traducción, como Adobe IO Runtime, AWS Lambda, etc., para traducir sobre la marcha las solicitudes/respuestas según sea necesario.

En esta página