Почему веб-службы ASP.NET JSON возвращают результат в 'd'?
Я написал некоторые веб-службы ASP.NET, которые используют кодировку JSON, a la:
[WebInvoke()]
[OperationContract]
public int SetInformation(int recordid, string data)
{
return 42;
}
а возвращаемый JSON:
{"d": 42}
Почему параметр с именем d
? Могу ли я это контролировать? Скажем, e
?
Для справки несколько аналогичных вопросов, которые я, наконец, смог выкопать:
Ответы
Ответ 1
Это функция безопасности, которая препятствует возврату JSON из возможности напрямую выполнять javascript внутри оператора Eval. Или что-то очень похожее в этом направлении.
Дополнительная информация по этой теме: http://encosia.com/a-breaking-change-between-versions-of-aspnet-ajax/ см. раздел Waiter, there’s a .d in my msg soup!