这篇文章主要介绍了关于关于Ajax如何实现跨域访问的问题,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下
在实际项目当中,我们经常会遇到同一个域名下不同项目之间通过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');
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
jQuery+AJAX+PHP+MySQL开发搜索无跳转无刷新的功能
Atas ialah kandungan terperinci 关于Ajax如何实现跨域访问的问题介绍. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!