CORS(Cross-origin resource sharing),跨域资源共享,是一份浏览器技术的规范,用来避开浏览器的同源策略
同源策略是一种约定,它是浏览器最核心也最基本的安全功能 如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。 可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。 它是一个安全策略。所有支持JavaScript的浏览器都会使用这个策略
满足同源的三个条件: 所谓同源是指,域名、协议、端口相同。
同源策略存在的意义: 非同源下的 cookie 等隐私数据可以被随意获取 非同源下的 DOM 可以的随意操作 ajax 可以任意请求的话,用户的各种隐私肯定会泄露,对用户造成不同程度的损失
不能获取不同源的 cookie,LocalStorage 和 indexDB 不能获取不同源的 DOM() 不能发送不同源的 ajax 请求 (可以向不同源的服务器发起请求,但是返回的数据会被浏览器拦截)
使用express写的接口,只能在内部使用,如果想要外部的服务访问,就涉及到了跨域。但是又不想用jsonp,其实有一个node模块,可以轻松实现跨域
npm install cors --save
然后在app.js文件中
//引入跨域模块
var cors = require('cors');
//注册跨域模块
app.use(cors());