Mvc Action可以通过jsonp方式调取
jsonp其实是一种特殊的数据获取格式,所以在Aicton直接调取的时候肯定会出现问题,下面代码是对于jsonp调取做的处理
protected virtual ActionResult CreateJSON(object data) { string JSON = data.JsonSerialized();//数据解析 string callBack = Request["CallBack"];//获取CallBack if (string.IsNullOrWhiteSpace(callBack)) //没有CallBack说明是正常调取 { return Json(data, JsonRequestBehavior.AllowGet); } else //jsonp调取 { return Content(string.Format("{0}({1})", callBack, JSON)); } }
另外 :还需在
ActionFilterAttribute Controller 上做方法标记 这样 jsonp请求 就不会有问题啦