看之前,这个问题只是简单的传递数据,然后再头部添加自定义字段.(没有jsonp啊,跨域啊等等)
源代码:
var lang= 'zh-cn'
$.ajax({
url:'就是一般的url',
type:'get',
dataType : 'json',
beforeSend: function(request) {
request.setRequestHeader("lang", lang);
},
success:function(res){
console.log(res.data)
},
fail:function(err){
console.log(err)
alert('服务器异常,请刷新重试!')
}
})
解决办法:
后台加入跨域:
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "OPTIONS, GET, POST, PUT, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "X-Requested-With, Content-Type, Accept, X-Token, lang");
response.setHeader("Access-Control-Expose-Headers", "*");
分析:红色圈住重点要考试。前端在头部加入自定义的字段lang时,后天要允许这个头部字段,经实际验证,可靠无疑。