使用自定义格式从PageMethod返回JSON对象

时间:2009-01-23 21:46:17

标签: asp.net json pagemethods

是否可以格式化对象从PageMethod以JSON的形式返回的方式?即。从数据中删除第一个“d”元素,而无需从头开始编写JSON。

来自{“d”:{“name”:“bob”,“email”:“bob@example.com”}}

要{“name”:“bob”,请发送电子邮件至:“bob@example.com”}

2 个答案:

答案 0 :(得分:4)

.NET框架添加了额外的"d"参数作为针对XSS攻击[source]的附加安全措施。如果请求的"Content-Type"指定"application/json",则会包含此内容。

认为如果您只是将请求的"d"指定为,则可以让框架将其排除(即不将结果包装在"Content-Type"中) "application/json"以外的其他内容。尝试从请求中删除该标头(如果可以)并查看.NET返回的内容。

答案 1 :(得分:1)

没有。 Microsoft的JSON序列化程序在服务器端出于某种原因添加了d,并且反序列化JSON字符串的客户端AJAX代码期望它存在。