public JsonResult JsonData()
{
HttpContext.Response.AppendHeader("Access-Control-Allow-Origin", "*");
return Json(db.Weathers.ToList());
}
json方法有一个重构:
protected internal JsonResult Json(object data); protected internal JsonResult Json(object data, JsonRequestBehavior behavior);
我们只需要使用第二种就行了,加上一个 json请求行为为Get方式就OK了
public JsonResult GetPersonInfo() { var person = new { Name = "张三", Age = 22, Sex = "男" }; return Json(person,JsonRequestBehavior.AllowGet); }
这样一来我们在前端就可以使用Get方式请求了:
view
$.ajax({ url: "/FriendLink/GetPersonInfo", type: "POST", dataType: "json", data: { }, success: function(data) { $("#friendContent").html(data.Name); } })
<!DOCTYPE html> <html> <head runat="server"> <title>Index2</title> <script src="Scriptsjquery-1.10.2.min.js" type="text/javascript"></script> <script type="text/javascript"> var login = function () { $.ajax({ type: "post", url: "http://localhost:4968/Weathers/JsonData", data: null, success: function (res) { alert(JSON.stringify(res)); }, dataType: "json" }); } </script> </head> <body> <div id="nav"> <a href="/Home/Index">ajax+Handler</a> <a>ajax+action</a> </div> <div> <h3> Login</h3> <button type="button" onclick="login()">Submit</button> </div> </body> </html>