關於.NET MVC4 Action 方法返回JsonResult和返回String類型的區別


首先說結論:設置返回String類型的, Response.ContentType = "application/json";等於使用JsonResult。
 
證據 1:設置返回String類型的, Response.ContentType = "application/json"。JQ會自動把JSON字符串轉換為JSON對象。
如果不設置 Response.ContentType = "application/json",則是使用默認值Response.ContentType = "text/html"。這樣JQ就不會把JSON字符串轉換為JSON對象。
看如下兩個實例:
---------------------------------------------------------------
 
-----------------
-----------------
------------------------------------------------------------------------
------------------------------------------------------------------------
 
 
 
證據 2:設置JsonResult 的ContentType = "text/html",這樣JQ就不會把JSON字符串轉換為JSON對象。
反之,使用默認值就是ContentType = "application/json ",JQ會自動把JSON字符串轉換為JSON對象。
看如下兩個實例:
----------------------------------------------------------------------
 
---------------------------
--------------------------
----------------------------------------------------------------------------
----------------------------------------------------------------------------
-----------------------------------------------------------
-------------------------------------------------------------
----------------------------------------------------------------------------
 
如上證據證明了,我的結論。
如下在記幾點:
1.當返回到前端的json數據,不標准時如--"{\"Age\":\"fdasfdasf\",\"name\":\"rer\"}",前端抓包的值和我給的一樣。不管你是用
JsonResult和返回String類型,都需要手動,  JSON.parse(Data),才能把字符串變為JSON對象。
1.當返回到前端的json數據,標准時如--"{"Age":"fdasfdasf","name":"rer"}",前端抓包的值和我給的一樣。
只需要保證響應報文頭的ContentType = "application/json,JQ 都會自動把JSON字符串轉換為JSON對象。
 
2014.09.02   六欲  在廣州


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM