今日在项目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) { //请求完成后最终执行参数

}

})

那么程序报错了Request header field Access-Token is not allowed by Access-Control-Allow-Headers in preflight response.

其中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':'http://www.qbjf.com/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);

}

});

jquery ajax设置头部,jQuery Ajax 设置请求头相关推荐

  1. nginx设置IP、文件目录、请求头白名单

    1.重点 2.测试环境 3.设置IP白名单 禁止多个ip 4.禁止访问某个目录 路径匹配符号 5.禁止访问某个目录的单个文件 6.请求头白名单 7.设置对应响应码的返回页面 1.重点 location ...

  2. Vue设置token拦截/加上Authorization请求头

    设置Authorization请求头(进行token验证) 1.拿到token存store中 登录Login.vue <script>export default {name: " ...

  3. ajax返回头部页面,ajax getResponseHeader获取中文响应头

    如果页面响应头中包含中文内容,ajax请求的页面和被请求的页面即使编码统一,不同浏览器下表现的方式还是会不一样,firefox/IE下出现乱码,chrome可以正常调用getResponseHeade ...

  4. python 全栈开发,Day87(ajax登录示例,CSRF跨站请求伪造,Django的中间件,自定义分页)...

    python 全栈开发,Day87(ajax登录示例,CSRF跨站请求伪造,Django的中间件,自定义分页) 一.ajax登录示例 新建项目login_ajax 修改urls.py,增加路径 fro ...

  5. pythonselenium设置_selenium 怎样设置请求头?

    我写一份完整版的吧包含selenium+phantomjs和selenium+chrome的 留了一份博客版的:selenium设置chrome和phantomjs的请求头信息 | | URl-tea ...

  6. HTTP请求头X-Forwarded-For,Remote_Addr

    HTTP协议定义了很多头部参数,这些参数由请求的发起方和响应方设置,所以头部参数可以分为请求头和响应头,通信双方(浏览器和服务器)会去读取这些头部参数并做出对应的的动作.如果有人不按协议设置这些参数, ...

  7. 请求到后台百分号被删除原因_接口测试平台代码实现85: 全局请求头1

    本节开始要制作一些次要功能,但是也是非常实用的.比如项目内的全局请求头. 首先看我们的前端页面,这个全局请求头的按钮: 我的设计是呢,点击后,出现一个弹层,这个弹层里除了保存/取消按钮 标题外.要有一 ...

  8. http请求头origin、referer和host区别

    1. Host 描述请求将被发送的目的地,包括且仅仅包括域名和端口号. HTTP/1.1 的所有请求报文中必须包含一个Host头字段,且只能设置一个. 2. Origin 请求头origin表明了请求 ...

  9. Ajax如何设置contenttype,jquery ajax contentType设置

    默认get方法没有contentType,post方法的contentType为:application/x-www-form-urlencoded; charset=UTF-8 (1) 设置成app ...

最新文章

  1. 测试机房质量之上传下载速率测试
  2. 机房批量改计算机名计算机组,批量设置IP地址和计算机名
  3. 【数据结构与算法】之深入解析“24点游戏”的求解思路与算法示例
  4. c++检测固定usb端口有无设备接入_电脑USB技术白皮书
  5. 解决跨浏览器兼容的CSS编码准则
  6. 服务器显示A40故障码,求助大神,车子出现故障码,5053无法消除
  7. tomcat插入oracle中文乱码_Java连接数据库oracle中文乱码解决方案
  8. 页面加载时,有较长时间的白页,有可能是什么原因造成的
  9. 毕设之 yolo5 航空影像飞行器检测
  10. java文字水印模糊_使用Java给图片添加文字水印并消除锯齿
  11. android pdf修改字体大小,如何编辑pdf文字(安卓上最好的pdf笔记app)
  12. panabit连接控制
  13. (排列组合的重复问题)
  14. 关于服务端的FIN_WAIT2
  15. IDEA必备好用插件合集
  16. GD32F10x的侵入检测事件
  17. android字体安装失败,字体管家安装字体失败插件
  18. 「硬见小百科」电子元器件图片识别(电容篇)
  19. 爆肝万字,终于搞定这篇⛵神经网络搭建全全全流程!学不会你来找我~
  20. WINDOWS10 启动失败 你的电脑/设备需要修复

热门文章

  1. 面向过程之骑士飞行棋
  2. 互联网员工桌子上的药
  3. 资讯类产品的数据驱动增长方法论
  4. PMCAFF产品众测 | 对话随手攒CEO聊聊这款产品的设计、推广和改进(活动已结束)
  5. PowerShell删除Exchange 2010邮件的正确姿势
  6. 私.Modbus测试_ZC02_串口方式
  7. 使用squid在阿里云服务器(centos7)上搭建自己的代理服务器
  8. python 9.13作业
  9. AppStore IPv6-only审核被拒原因分析及解决方案-a
  10. 在linux下面安装MySQL5.6管理帐号安装失败的解决方法