2009-01-23 84 views
3

是否可以格式化對象作爲JSON從PageMethod返回的方式?即。從數據中刪除第一個「d」元素,而無需從頭開始編寫JSON。從自定義格式的PageMethod中返回JSON對象

從{ 「d」:{ 「名」: 「鮑勃」, 「電子郵件」: 「[email protected]」}}

爲{ 「名」: 「鮑勃」,郵件:「鮑勃@ example.com「}

+0

你有沒有你的頁面邏輯的例子? – cgreeno 2009-01-23 22:14:24

+0

想要刪除它的原因是什麼? – 2009-01-23 23:24:28

回答

1

不可以。不會。微軟的JSON序列化程序在服務器端添加了d,並且客戶端AJAX代碼對JSON字符串進行反序列化,期望它在那裏。

4

額外的"d"參數是由.NET框架添加的,作爲針對XSS攻擊的附加安全措施[source]。當請求的"Content-Type"指定"application/json"時包括它。

認爲你可以得到的框架將它排除在外(即不裹結果在"d"),如果你簡單地指定要求的比"application/json"其他東西的"Content-Type"。嘗試從請求中刪除該頭(如果可以的話)並查看.NET返回的內容。