Ajax实现跨域访问最新解决方案

所属分类: 网络编程 / AJAX相关 阅读数: 1681
收藏 0 赞 0 分享

在实际项目当中,我们经常会遇到同一个域名下不同项目之间通过Ajax相互调用数据,这样问题就来了,如何通过Ajax实现跨域呢?

解决方案

1.Jsonp

Jsonp解决跨域相对简单,服务器无需任何配置。具体实现如下:

$.ajax({
  type: 'get',
  url: 'http://xxx.com',
  data: {},
  dataType: 'jsonp',
  success: function (data) {
    
  },
  error: function (data) {
    mask.close();
    toast('请求失败');
  }
});

2.CORS

CORS解决方案需要前端和服务端共同配置才能实现

前端

$.ajax({
  url: 'http://xxx.com',
  type: 'post',
  xhrFields:{
    withCredentials:true
  },
  data: {},
  success: function(res){
  },
  error: function(){
    alert('服务器发生错误!');
  }
});

服务端(在程序入口文件配置)

header('Access-Control-Allow-Origin: http://xxx.com');
header('Access-Control-Allow-Credentials: true');
header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');

以上所述是小编给大家介绍的Ajax实现跨域访问最新解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

Baidu Musicbox 用到的ajax代码

Baidu Musicbox 用到的ajax代码
收藏 0 赞 0 分享

[asp]天枫AJAX百度音乐即时听附下载

[asp]天枫AJAX百度音乐即时听附下载
收藏 0 赞 0 分享

[asp]天枫AJAX blog V1.0 程序提供下载了

[asp]天枫AJAX blog V1.0 程序提供下载了
收藏 0 赞 0 分享

如何解决远程页面抓取中的乱码问题

如何解决远程页面抓取中的乱码问题
收藏 0 赞 0 分享

一个方便AJAX开发的通用类

一个方便AJAX开发的通用类
收藏 0 赞 0 分享

AJAXRequest v0.2

AJAXRequest v0.2
收藏 0 赞 0 分享

一个简单的AJAX请求类

一个简单的AJAX请求类
收藏 0 赞 0 分享

一个Ajax类

一个Ajax类
收藏 0 赞 0 分享

AJAX 常用函数

AJAX 常用函数
收藏 0 赞 0 分享

[ASP.NET Ajax] ECMAScript基础类以及Asp.net Ajax对类<Object>的扩展

[ASP.NET Ajax] ECMAScript基础类以及Asp.net Ajax对类<Object>的扩展
收藏 0 赞 0 分享
查看更多