Возврат объекта JSON из PageMethod с пользовательским форматированием
-
19-08-2019 - |
Вопрос
Можно ли отформатировать возврат объекта в формате JSON из PageMethod?то есть.удаление первого элемента «d» из данных без написания JSON с нуля.
От { "д":{ "имя":«Боб», «электронная почта»:"bob@example.com" } }
Назвать":«Боб», адрес электронной почты:"bob@example.com" }
Решение
Нет.Сериализатор JSON от Microsoft по какой-то причине добавляет d на стороне сервера, а код AJAX на стороне клиента, который десериализует строку JSON, ожидает, что он будет там.
Другие советы
Дополнительный параметр "d"
добавляется платформой .NET в качестве дополнительной меры защиты от атак XSS [ источник ]. Он включается, когда "Content-Type"
запроса указывает "application/json"
.
Я думаю, вы можете заставить фреймворк исключить его (т.е. не переносить результат в <=>), если вы просто указали <=> запроса как нечто иное, чем < =>. Попробуйте удалить этот заголовок из запроса (если можете) и посмотрите, что вернет .NET.