以node koa为例

app.use(function *(){

let {method, url, header} = this.request;

this.set('Access-Control-Allow-Origin', '*');

if (method.toLowerCase() === 'options') {

this.set('Access-Control-Allow-Credentials', 'true');

this.set('Access-Control-Allow-Methods', 'POST,GET,OPTIONS,PUT,DELETE');

this.set('Access-Control-Allow-Headers', 'cache-control,content-type,hash-referer,x-requested-with');

this.body = '';

return false;

}

// 下面是正常逻辑.....

});

app.listen(9870);

this.set('Access-Control-Allow-Headers', 'cache-control,content-type,hash-referer,x-requested-with'); //注意值是小写 !!!!!

这里判断method是因为浏览器第一次会发起一个options来检查服务器是否支持跨域访问,如下图

浏览器先去判断服务器是否返回了指定的值(上面设置的那些),如果是支持的,才会去发起真正的请求,如下图

以上这个GET才是我真正发起的请求

虽然也可以不去判断是否是options请求,但这样的话会返回不必要的数据

php避免options请求,OPTIONS请求 已阻止跨源请求:CORS 头缺少 'Access-Control-Allow-Origin'...相关推荐

  1. 已阻止跨源请求:同源策略禁止读取位于

    解决方法--由于我的是PHP项目,在第二个页面/方法中,就是被请求的方法加入如下代码: Header("Access-Control-Allow-Origin: * "); Hea ...

  2. 浏览器拦截跨域请求处理方法(已阻止跨源请求:同源策略禁止读取远程资源)

    原文地址:http://my.oschina.net/lichaoqiang/blog/317823 在浏览器请求中,出现跨域访问资源的问题,我们肯定会遇到.如果跨域请求被阻止,有可能导致css.js ...

  3. 已拦截跨源请求:同源策略禁止读取位于XXXXXXXXXXXXXXXX/demo_test.txt 的远程资源。(原因:CORS 请求不是 http)

    完整问题复现如下: 已拦截跨源请求:同源策略禁止读取位于XXXXXXXXXXXXXXXX/demo_test.txt 的远程资源.(原因:CORS 请求不是 http) 原始代码index.html在 ...

  4. 已拦截跨源请求:同源策略禁止读取位于 http:**** 的远程资源。(原因:CORS 头缺少 ‘Access-Control-A

    报错: Access to fetch at 'https://www.baidu.com/' from origin 'http://www.baidu.com' has been blocked ...

  5. 已拦截跨源请求:同源策略禁止读取位于...的远程资源。(原因:CORS 请求未能成功)。

    已拦截跨源请求:同源策略禁止读取位于 http://192.168.43.207:8080/manager/login?name=hao&password=111 的远程资源.(原因:CORS ...

  6. 已拦截跨源请求:同源策略禁止读取位于 http://localhost:8202/admin/cmn/dict/findChildData/1 的远程资源。(原因:CORS 头缺少 ‘Access-C

    可能1: 这是一个CORS跨域访问错误,大概意思是被服务器端同源策略拦截导致,因为项目是前后端分离开发,所以服务器会判断前端属于跨域请求. (1) 在后端controller接口上添加注解: @Cro ...

  7. vue项目中已拦截跨源请求:同源策略禁止读取位于....(原因:CORS 请求未能成功)解决方案

    手动给Global.asax配置,添加如下方法 protected void Application_BeginRequest(object sender, EventArgs e){System.W ...

  8. java请求报错(原因:CORS 头缺少 ‘Access-Control-Allow-Origin‘)

    报错信息:已拦截跨源请求:同源策略禁止读取位于 http://localhost:8080/user/getUserSession 的远程资源.(原因:CORS 请求未能成功). 方法一: @Requ ...

  9. 已拦截跨域请求 浏览器_浏览器拦截跨域请求处理方法

    引用 在浏览器请求中,出现跨域访问资源的问题,我们肯定会遇到.如果跨域请求被阻止,有可能导致css.js .ajax请求.font字体等资源出现无法正常访问的问题.接下来,就介绍下解决同源策略不允许读 ...

最新文章

  1. 如何理解最小二乘法(19世纪的统计学就相当于18世纪的微积分对于数学的地位)
  2. JS转换HTML转义符
  3. 使用Github(基本概念实战操作)
  4. void函数调用时显示不允许使用不完整的_4位数码管显示模块驱动
  5. linux查看pid 对应的程序_资深程序员总结:分析 Linux 进程的 6 个方法,我全都告诉你...
  6. 关于伪静态和真静态的一点心得
  7. Mybatis Plus简介_代码_以及文档地址_以及前置知识---Mybatis Plus工作笔记001
  8. c#静态变量和静态属性的区别
  9. 月租最便宜的手机卡_有什么价格便宜,月租少,流量多,并且可以从旧套餐转入的手机卡推荐?...
  10. jmeter html插件,Jmeter最常见的几个插件(一)
  11. [解决方案]SQLSTATE[HY000]: General error: 2006 MySQL server has gone away
  12. c语言情话编程,用c语言写的情话
  13. 图书管理系统(C SQL)
  14. 程序员装机必备利器列表
  15. python爬虫项目-优美图库
  16. STM32F4的DMA
  17. Python3 mp3音频转mav格式及ffmpeg安装
  18. JMeter基本使用
  19. 这届“怕死”的年轻人,“疫后”正在拼命“养生”
  20. 1、安装Vmware

热门文章

  1. 售票java代码_Java代码实践12306售票算法(二)
  2. python自编码器降维_自编码器数据降维实践
  3. root快速关闭,如何关闭root功能
  4. JavaScript获取元素样式
  5. 怎么在html上放音乐,教你如何在网页中直接播放MP3音乐
  6. 单视图测量 (2D变换、影消点线、单视图重构)
  7. 公认音质最好的蓝牙耳机有哪些?618必备音质最好蓝牙耳机
  8. 关于Taro3.0如何使用React-Native的Pushy以及android打包
  9. css溢出省略号隐藏
  10. Python 读取excel文件中的数据并转换为字典