写一个ASP.NET MVC例子,它是使用jQuery的$.Ajax来呼叫控制器的数据。
一切正常,但是本例子我们只是获取数据,并没有做任何数据POST上传至控制器,我们尝试把jQuery代码的type改为GET试。
奇怪,经查资料,原来JsonResult操作返回JSON时,JsonRequestBehavior默认是POST。因此我们需要为其指定参数选项JsonRequestBehavior.AllowGet:
添加此参数选项之后,显示结果跟POST是一样的。
当然,某些原因需要,你的JsonResult只能使用POST的话,可以使用另外一个参数JsonRequestBehavior.DenyGet:
这样显式指定DenyGet之后,jQuery的$.Ajax绝对不能用GET了。