Configuré una aplicación personalizada en Integromat que integra una API personalizada para un servicio de entrega.
Parte del módulo, en algún momento, recibió un error debido a una dirección incorrecta (es decir, un código postal incorrecto). El cuerpo de la respuesta de la API tiene el problema específico en el body , pero durante el escenario, si ocurre el error, solo obtengo el error de Integromat que no tiene ningún dato adicional, por lo que tengo que volver a ejecutar manualmente el escenario usando las herramientas de desarrollo de Integromat para leer cual fue el problema.
Leyendo aquí Manejo de errores con diferentes estructuras de error en mi aplicación Integromat personalizada , descubrí usar una función personalizada para analizar el cuerpo de la respuesta
function parseErrorMessage(body) { if ('string' === typeof body.data) return JSON.parse(body.data) } pero no entendí cómo capturar los 3 campos que contienen los datos: errorFieldCode , errorTypeCode y errorMessage .
La función se llama en el módulo con este fragmento:
"response": { "output": "{{body}}", "error": "{{parseErrorMessage(body)}}" }Me gustaría usar esos datos en un módulo en la ruta de manejo de errores.
¿Cómo debo editar la función anterior para analizar el cuerpo en el campo 3 que contiene?
Aquí hay una captura de pantalla donde puede ver el módulo con un error, el cuerpo de la respuesta con la información que necesito para comprender el error inmediatamente (borde violeta) y la salida del módulo en su lugar (borde naranja).
No puedo manipular el cuerpo de la respuesta, ya que Integromat es un error y llena el campo de salida con sus datos.