Показать сообщение отдельно
  #5 (permalink)  
Старый 29.04.2018, 20:57
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,585

ivnjavascript, нет, проблема в другом:
У вас в json
{
    "errors": x,
    "success": false
}
на место x вкладывается в виде строки ещё один json
{
  "count": [
    {
      "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
      "code": "required"
    }
  ], 
  "email": [
    {
      "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
      "code": "required"
    }
  ], 
  "count_man": [
    {
      "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
      "code": "required"
    }
  ]
}
Из-за чего возникает двойное переэкранирование (\\) и необходимость декодировать сначала ответ, а затем ещё и параметр.
Должно быть так:
{
  "errors": {
    "count": [
      {
        "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
        "code": "required"
      }
    ], 
    "email": [
      {
        "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
        "code": "required"
      }
    ], 
    "count_man": [
      {
        "message": "\u041e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u043e\u043b\u0435.", 
        "code": "required"
      }
    ]
  },
  "success": false
}
а не как у вас, тогда можно будет спокойно работать с объектом.

Конкретно же \uXXXX, как выше заметили - это стандартная юникод кодировка, при декодировании json браузером прозрачно становится обычной javascript строкой и не требует никаких дополнительных действий.
__________________
29375, 35
Ответить с цитированием