700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > jquery ajax设置头部 jQuery Ajax 设置请求头

jquery ajax设置头部 jQuery Ajax 设置请求头

时间:2023-06-21 15:56:24

相关推荐

jquery ajax设置头部 jQuery Ajax 设置请求头

今日在项目ajax访问中 获取接口地址,出现一个这样的错误:

Request header field Access-Token is not allowed by Access-Control-Allow-Headers in preflight response.

意思是说Access-Token 是不被允许的 ,那么如何进行设置呢,看下面的实例即可

$.ajax({

type:type,

timeout:10000,//超时时间10秒

headers:{

'Access-Token':'123456'

},

url:url,

data:data,

success:function(data){

},

error:function(err){

},

complete:function(XMLHttpRequest,status){//请求完成后最终执行参数

}

})

那么程序报错了RequestheaderfieldAccess-TokenisnotallowedbyAccess-Control-Allow-Headersinpreflightresponse.

其中Access-Control-Allow-Headers 首部字段用于预检请求的响应。

查阅了很多参考资料以及各位前辈踩坑记录,得到如下总结:

报错意思是请求头中的Access-Token字段在Access-Control-Allow-Headers中没有被设置为允许.

谁来设置?

一种是font-end自己设置,在ajax在中设置beforeSend$.ajax({

type:type,

timeout:10000,

beforeSend:function(xhr){

xhr.setRequestHeader("Access-Toke");

},

headers:{

'Access-Token':123456

},

url:url,

data:data,

success:function(data){

},

error:function(err){

},

complete:function(XMLHttpRequest,status){//请求完成后最终执行参数

}

});

还有一种:

在服务器代码中加入:服务器端就加这么一句话即可header("Access-Control-Allow-Headers:Access-Token");

这样的一句话,即可解决上述问题

headers:{

'Access-Token':123456

},

这个header头这样传递以后在PHP$_SERVER中的值是$_SERVER['HTTP_ACCESS_TOKEN']自动转换成这样了,切记

简单跨域设置://header('Access-Control-Allow-Origin:*');

header("Access-Control-Allow-Headers:Access-Token");//Origin,X-Requested-With,Content-Type,Accept

header('Access-Control-Allow-Methods:GET,POST,PUT,DELETE');

这是一个简单的jquery实例

html>

Document

$.ajax({

'url':'/index.php/hellow/index2',

'method':'post',

'headers':{

/*'aaa':'123456',

'accept':"application/json;charset=utf-8",*/

'Access-Token':'asdfasd'

},

'data':{

'username':'123',

'password':'456'

},

success:function(data){

console.log(data);

}

});

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。