Access-Control-Allow-Headers

响应首部 Access-Control-Allow-Headers 用于 preflight request (预检请求)中,列出了将会在正式请求的 Access-Control-Request-Headers 字段中出现的首部信息。

简单首部,如 simple headers、Accept、Accept-Language、Content-Language、Content-Type (只限于解析后的值为 application/x-www-form-urlencoded、multipart/form-data 或 text/plain 三种MIME类型(不包括参数)),它们始终是被支持的,不需要在这个首部特意列出。

如果请求中含有 Access-Control-Request-Headers 字段,那么这个首部是必要的。

创作者:吴仔汕

遇到的问题:

nginx代理后端服务器,想要去上传文件至的平台时,却发现服务出现了跨域问题:

提示CORS :No ‘Access-Control-Allow-Origin’ header

首先、在nginx中配置了常见的跨域配置,

add_header Access-Control-Allow-Origin * always;
add_header Access-Control-Allow-Credentials 'true';
add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS' always;
add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
重启nginx后,问题得到解决,但是又出现另一个跨域的报错:

“Request header field x-token is not allowed by Access-Control-Allow-Headers in preflight response.”

然后去官网里面搜索查询,解读各header的含义。。。(很久)

最后自己服务的需求配置了一套完美解决跨域问题的全套nginx配置:

 add_header 'Access-Control-Allow-Origin' '*' always;add_header 'Access-Control-Allow-Credentials' 'true';add_header 'Access-Control-Allow-Methods' 'GET, POST, PATCH, DELETE, PUT, OPTIONS';add_header 'Access-Control-Allow-Headers' 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type, X-Custom-Header, Access-Control-Expose-Headers, Token, Authorization';add_header 'Access-Control-Allow-Headers'  '*';add_header 'Access-Control-Max-Age' 1728000;

尽管花了一大堆时间去弄这个,但最后还是解决了这个问题,还是可行的。

欢迎大家参考,还可以提出疑问或者不同看法噢。

原创作品,转载请标明出处!!

完美解决nginx跨域问题Request header field x-token is not allowed by Access-Control-Allow-Headers in prefligh相关推荐

  1. axios请求跨域前端解决_完美解决axios跨域请求出错的问题

    错误信息: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Orig ...

  2. ajax error parsererror,完美解决ajax跨域请求下parsererror的错误

    AJAX 的 完美解决ajax跨域请求下parsererror的错误 ajax请求报parsererror错误是很宽泛的概念,很多情况下都报这个错, 在很多时候,即使ajax提交.返回都正常 XMLH ...

  3. beforeSend 出现跨域问题,header里直接设置token就没问题----Day1

    一开始前端调用后端接口出现跨域问题,右键查看元素,会有跨域错误提示,类似下图,后来找后端设置了一下,问题解决.可以登录获取token等参数了. 但是 请求设备列表时,beforeSend 中设置tok ...

  4. Nginx跨域解决配置示例

    简介 在日常学习和工作开发中,需要请求两个不同配置的请求经常存在,本文介绍如果还使用Nginx配置解决其跨域问题 相关理论 首先需要了解什么是跨域,下面的两个文章说的很好,请仔细阅读后,然后自己去动手 ...

  5. Nginx 代理解决前端跨域问题

    目录 一.什么是 nginx 二.nginx 的用途 三.代理 1.正向代理 2.反向代理 四.nginx.conf 配置文件的基本结构 五.nginx 的内置变量 六.nginx 解决跨域的原理 七 ...

  6. Nginx 解决WebApi跨域二次请求以及Vue单页面问题

    Nginx 解决WebApi跨域二次请求以及Vue单页面问题 参考文章: (1)Nginx 解决WebApi跨域二次请求以及Vue单页面问题 (2)https://www.cnblogs.com/ji ...

  7. Request header field Content-Type is not allowed by Access-Control-Allow-Headers跨域

    跨域错误提示: XMLHttpRequest cannot load http://xxx.com. Request header field Content-Type is not allowed ...

  8. nginx解决浏览器跨域问题_使用nginx解决浏览器跨域

    什么是浏览器跨域? 跨域就是指浏览器具有同源策略,浏览器不会执行访问其它网址数据的js脚本,比如说访问其它网址的cookie数据,调用其它网址的api接口. 什么是同源? 协议,域名,端口均相同的情况 ...

  9. 解决js跨域使用nginx配置问题

    解决js跨域使用nginx配置问题 参考文章: (1)解决js跨域使用nginx配置问题 (2)https://www.cnblogs.com/phpzhou/p/11132674.html 备忘一下 ...

最新文章

  1. C++11中override的使用
  2. python字典去重
  3. scp会覆盖同名文件吗_你会Hypermesh一键式完成几何文件到求解文件的输出吗?
  4. Java高并发编程详解系列-类加载
  5. PAT_1056_组合数的和(15)
  6. html css字体最小,html-字体大小CSS问题
  7. REST是否会步SOAP的后尘?
  8. 用户增删改查 django生命周期 数据库操作
  9. 音视频即时通讯开发中使用P2P技术的好处
  10. 【毕业求职季】-听说你想去大厂看学妹,带你看看字节广告运营岗面试长啥样?
  11. 正则表达式的语法及使用
  12. 【Shell案例】【for循环、seq生成】3、输出7的倍数
  13. 不清楚用电脑怎么图片转文字?来看看这三个方法吧
  14. 个人电脑应用常识记录
  15. 220817笔试(速腾聚创)
  16. C/C++黑魔法-隐含的this指针
  17. 国产香氛品牌别样的生意经
  18. 后疫情时代 金融行业数字化转型解题
  19. c语言习题:华氏度摄氏度比照表
  20. 第三十九天:linux内核裁剪

热门文章

  1. visual c++ 棋牌类游戏编程实例
  2. 卓训教育:儿童哭闹买玩具,家长该怎么办?
  3. 安装sentence_transformers
  4. 大数据时代,女性做数据分析师有没有优势?
  5. 天籁之声---世界上最动听的歌
  6. 认识大蟒:Python 快速入门 | 周末送书
  7. 三大运营商体验好又省钱方案
  8. linux命令简化,Linux ls 命令实现(简化版)
  9. layui table 表格设置透明
  10. 解密PC版微信数据库ChatMsg.db