Элемент ответа JSON не определен - PullRequest
0 голосов
/ 13 марта 2019

У меня возникла проблема с отображением текста ответа JSON: У меня следующий ответ:

{
  "status": false,
  "msg": "Achtung: Zeile 2 enthält ungültige Zeichen!",
  "csv_data": []
}

И теперь я хочу записать текст "msg" в консоли для целей тестирования.Вот что я попробовал:

[...], success: function (file, response) {
        // this response works and logs the above JSON
        console.dir(response);

        // the following return "undefined"
        console.log(response.msg);

В чем здесь проблема?Я не могу найти ошибку ... Спасибо за помощь!:)

Ответы [ 4 ]

0 голосов
/ 13 марта 2019

Завершение ответа, после AZ_ ,

const finalResponse = typeof response === 'object'? response: JSON.parse(response);
console.log(finalResponse.msg);
0 голосов
/ 13 марта 2019

Ответ имеет тип строки.Вы должны разобрать его как JSON:

let response = '{"status": false, "msg": "Achtung: Zeile 2 enthält ungültige Zeichen!", "csv_data": []}'


let json_response = JSON.parse(response);
console.log(json_response.msg);
0 голосов
/ 13 марта 2019

Разбор ответа, если это не объект, иначе ничего не делать

response = typeof response === 'object'? response: JSON.parse(response)
OR

try {
  response = JSON.parse(response)
} catch(err) {
  //do nothing
}
0 голосов
/ 13 марта 2019

Может быть потому, что он строковый. Попробуйте:

JSON.parse(response).msg

Если это не сработает, попробуйте:

response.data.msg
...