Entonces tengo la siguiente respuesta:
{ "errors": [ { "errorKey": "ERROR_NO_DELIVERY_OPTIONS", "errorParameters": "[{\"errorMessage\":\"ERROR_DELIVERY_OPTIONS_YOU_SELECTED_NOT_AVAILABLE_NOW\",\"partNumbers\":[\"19308033\",\"19114798\"]},{\"errorMessage\":\"Pickup At Seller not available for these orderItemIds\",\"orderItemIds\":[\"10315031\",\"10315032\"],\"availableShipModeId\":\"13201\"}]", "errorMessage": "ERROR_NO_DELIVERY_OPTIONS", "errorCode": "ERROR_NO_DELIVERY_OPTIONS" } ] }Desafortunadamente, no estoy seguro de cómo trabajar con el valor de "errorParameters", ya que es solo una cadena y no un valor clave simple como los demás. ¿Cómo extraería toda la información para poder trabajar con ella? Un compañero de trabajo mencionó analizarlo, pero no está seguro de qué quiso decir con eso y cómo. A continuación se muestra un valor más legible. Estoy trabajando con javascript.
[ { "errorMessage": "ERROR_DELIVERY_OPTIONS_YOU_SELECTED_NOT_AVAILABLE_NOW", "partNumbers": [ 19308033, 19114798 ] }, { "errorMessage": "No Shipmodes Available for these orderItemsIds", "orderItemIds": [ 10315031, 10315032 ] } ]Deberá usar JSON. JSON.parse para transformar cadenas JSON en un objeto JS.
Tendrás que hacer esto en tu código. ES DECIR
data.errors.forEach(e => console.log(JSON.parse(e.errorParameters)))Puede usar solo la función JSON.parse() , que cambia la representación JSON de cadena en un objeto JavaScript.
const parsedErrorParameters = JSON.parse(data.errorParameters); console.log(parsedErrorParameters[0].errorMessage); // ERROR_DELIVERY_OPTIONS_YOU_SELECTED_NOT_AVAILABLE_NOWhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse