角度4无法访问json响应

时间:2017-10-10 09:52:16

标签: angular

我想在某些特定情况下记录一些错误,如果我尝试记录error我有:

{
  "errors" : [ {
    "entity" : "Movement",
    "property" : "direction",
    "invalidValue" : null,
    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."
  }, {
    "entity" : "Movement",
    "property" : "workSession",
    "invalidValue" : null,
    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."
  }, {
    "entity" : "Movement",
    "property" : "description",
    "invalidValue" : null,
    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."
  } ]
}

这是完整的错误日志:

HttpErrorResponse {headers: HttpHeaders, status: 400, statusText: "OK", url: "http://79.1.33.138:8080/api/v1/movements", ok: false, …}
error:"{↵  "errors" : [ {↵    "entity" : "Movement",↵    "property" : "direction",↵    "invalidValue" : null,↵    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."↵  }, { ↵    "entity" : "Movement",↵    "property" : "workSession",↵    "invalidValue" : null,↵    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."↵  }, { ↵    "entity" : "Movement",↵    "property" : "description",↵    "invalidValue" : null,↵    "message" : "Il campo non può essere vuoto. Inserire un valore valido e ripetere loperazione."↵  } ]↵}"headers:HttpHeaders {normalizedNames: Map(0), lazyUpdate: null, lazyInit: ƒ}message:"Http failure response for http://79.1.33.138:8080/api/v1/movements: 400 OK"name:"HttpErrorResponse"ok:false status:400statusText:"OK" url:"http://...../api/v1/movements"  __proto__:HttpResponseBase

但如果我尝试记录error.errorserror.errors[0],我会看到:Cannot read property '0' of undefined 这个回复有什么问题,通常我没有这样的问题

1 个答案:

答案 0 :(得分:1)

根据评论的所有信息,我找到了解析字符串的方法(错误)。您可以使用它提供的解析器将您的字符串转换为json:

JSON.parse(error);