2014-09-17 2 views
-1

У меня есть ответ JSON, как это,Json Object с обратной косой чертой, как читать контент?

{"readyState":4,"responseText":"{\"error\":{\"type\":\"Duplicate user\",\"errorMessage\":\"Another user exists with this user name\"}}","status":409,"statusText":"Conflict"} 

Мне нужно, чтобы показать пользователю сообщение об ошибке, как data.responseText.errorMessage Но это показывает ошибку, я просто удалить «\» (Backslash) с использованием метода JSON.stringify(data).replace(/\\/g, ""). Но я получаю строку как результат этим. (Приведены ниже)

{"readyState":4,"responseText":"{"error":{"type":"Duplicate user","errorMessage":"Another user exists with this user name (9846184100)"}}","status":409,"statusText":"Conflict"} 

Я не могу разобрать это объект JSON с помощью JSON.parse Но результат Unexpected token e

Тогда как я могу показать ErrorMessage?

Заранее спасибо

+2

Строки вы получаете не плохо сформированную – Balder

+0

Нет это не так, но Я думаю, что это очень плохая практика, чтобы сделать это вот так: –

+0

Но подождите, вы получаете этот ответ от запроса ajax? Тогда есть намного лучшие способы сделать это! –

ответ

1

Ваша строки отлично действует, как она есть, но вы должны сначала разобрать текст ответа:

var response = JSON.parse(data.responseText); 
alert(response.error.errorMessage); 
+0

Спасибо, брат, отличный ответ, я строю с несколькими часами ... !! – user3017713

Смежные вопросы