如何在此JSON中访问此键的此值?

时间:2016-07-26 20:37:47

标签: javascript json

我想阅读_body中的错误消息。

目前,我所做的是:

的console.log(message._body.error);

然而,我未定义。

当我做console.log(message._body);

我得到“{”代码“:141,”错误“:”此电话号码已经存在!“}”

var message = {  
"_body":"{"code":141,"error":"This phone number exists already!"}",
"status":400,
"ok":false,
"statusText":"Bad Request",
"type":2
};

顺便说一句,后面这样的后端形成了这样的后端,我不能改变它的格式既不删除双引号

   "_body":"{"code":141,"error":"This phone number exists already!"}"

如何阅读错误消息?

4 个答案:

答案 0 :(得分:1)

听起来你有一个包含有效JSON字符串的属性。

您需要调用JSON.parse()将其转换为实际对象。

答案 1 :(得分:0)

删除双引号。这样做......

"_body":{"code":141,"error":"This phone number exists already!"},

这是一个小提琴......

https://jsfiddle.net/cmht6u8f/1/

答案 2 :(得分:0)

  1. You have to fix the json to it's proper form:

    var message = { 
        "_body":'{"code":141,"error":"This phone number exists already!"}',
        "status":400,
        "ok":false,
        "statusText":"Bad Request",
        "type":2
     };
    
  2. parse the inner json and use it...

     var err = JSON.parse(message._body);
     console.log(err.error);
    

答案 3 :(得分:0)

在你的情况下,你需要在从后端收到错误后使用json()方法将其转换为json。

以下内容适合您:

  

error.json()。误差

console.log(error.json().error)