У меня есть http-ответ, имя которого содержит символ Unicode (например, Мюллер).
В IE11 я получаю сообщение об ошибке «Неверный символ», потому что кажется, что в IE11 весь HTTP-ответ читается как строка в угловом HTTP-ответе, и он пытается проанализировать эту строку в JSON (вместо уже в JSON). формат). Но в строке JSON это выглядит примерно так:
...,\"lastName\":\"M�}],\"id\":1,...
Проблема в том, что часть фамилии была удалена, и теперь в значении lastName отсутствует закрывающая кавычка. Я не возражаю против того, что он показывает знак вопроса с бриллиантом, это просто полностью нарушает ответ.
В chrome он работает нормально, поскольку данные фактически возвращаются в виде объекта JSON, в отличие от IE11, где они возвращаются в виде строки, а затем пытается преобразовать в JSON в функциях ответа преобразования по умолчанию.
Запрос в формате application / json charset: utf-8.
Ответ в формате application / json.
Кто-нибудь знает, что не так?
Редактировать: в теле ответа IE11 он отображается корректно как "Мюллер" в формате JSON.
Редактировать: похоже, что он съел первые 5 символов после ü
при возврате ответа. (например, Mülleraa будет выглядеть как ...\"M�a\"...
, где закрывающая цитата возвращается с дополнительным символом 'a')