MVC+JQuery实现跨域Jsonp调用Js

本文介绍了一种在MVC框架中处理JSONP请求的方法。通过定义Jsonp方法,可以灵活地根据请求参数返回JSONP格式的数据。此外,还提供了一个使用jQuery发起JSONP请求的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.MVC控制器

///


/// 处理Jsonp请求,若没有指定对应的jsoncallback,则返回Json
///

///
///
private ActionResult Jsonp(object data)
{
  string jsoncallback = Request.QueryString["jsoncallback"];
  if (string.IsNullOrEmpty(jsoncallback))
  {
      return Json(data, JsonRequestBehavior.AllowGet);
  }
  return Content(string.Format("{0}({1})", jsoncallback, data.ToJson()), "text/plain", System.Text.Encoding.UTF8);
}

public ActionResult GetTime(string value)
{
  return Jsonp(DateTime.Now + ":" + value);
}2.Javascript$.ajax({
  async: true,
  url: 'http://localhost/test/gettime',
  type: 'GET',
  dataType: 'jsonp',
  jsonp: 'jsoncallback',
  data: {value:"abc"},
  timeout: 1000,
  beforeSend: function() {
  },
  success: function(json) {
      alert(json);
  },
  complete: function(XMLHttpRequest, textStatus) {
      //alert('complete');
  },
  error: function(xhr) {
      //alert("xhr");
  }
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值