const server1 = 'http://wx.lxjjz.cn';
const server2 = 'http://test.lxjjz.cn';
var setType = dev ? "jsonp" :"json"
console.log(tools.createURL(apis.Message))
$.ajax({
url:server2,
dataType: setType,
success:(data)=>{
console.log(data)
}
})
后台设计API是这样设计,测试域名的时候就用jsonp,放到线上就回json,把dataType做成变量;有什么办法可以本地测试的时候不用jsonp,直接更换域名就能访问到后台数据,如果不做jsonp后台PHP如何做?
PHP中文网2017-04-11 11:51:42
开始时候跨域问题...下面几种都OK把
后端直接允许跨域 , 生产环境取消
php更方便用nginx , 反向代理
现在很多的框架都带了serve , 可以直接配置 proxy
巴扎黑2017-04-11 11:51:42
如果可以修改后台文件,最简单的方法是使用xhr2,ajax中不需要使用jsonp,只需要在后台php加上两句代码
header('Access-Control-Allow-Origin:*');
//*代表可访问的地址,可以设置指定域名
header('Access-Control-Allow-Methods:POST,GET');
//允许的请求方法