-
由于XHR对象被W3C标准化之后,提出了很多XHR Level2的新构想,其中新增了很多新方法(onload、response…)和CORS跨域资源共享。浏览器升级后开始支持CORS方案。
-
CORS才是解决跨域的真正解决方案。
-
代码:
-
前端:正常请求;
-
后台:设置请求头;
// ---------------------------------前端代码 $.ajax({ url: 'http://localhost:3006/api/cors', success: function (res) { console.log(res) } });
// ---------------------------------后台代码 const express = require('express'); const app = express(); app.listen(3006, () => console.log('启动了')); // 测试接口(测试cors) app.get('/api/cors', (req, res) => { // 任何请求来源都可以获取响应的数据 res.setHeader('Access-Control-Allow-Origin', '*'); res.send('hi,你看到我了'); });
// 设置我们中间件 app.use((req, res,next) => { res.setHeader('Access-Control-Allow-Origin', '*'); next(); }); app.get('/api/cors/a', (req, res) => { res.send('hi,你看到我了'); }); app.get('/api/cors/b', (req, res) => { res.send('hi,你看到我了'); });
-
-
或者采用第三方模块,作为中间件使用:cors
// npm i cors const cors = require("cors"); app.use(cors()); // 相当于是上面的封装,当然人家这个更加优化
相关文章
- 02-21Spring Boot2 系列教程(十四)CORS 解决跨域问题
- 02-21跨域问题如何解决
- 02-21SpringBoot 处理跨域请求问题
- 02-21springboot cors跨域
- 02-21解决跨域问题代码
- 02-21springboot集成shiro的权限中cors跨域问题
- 02-21后端解决跨域问题
- 02-21CORS跨域资源共享总结
- 02-21spring-boot-plus CORS跨域处理
- 02-21Spring @CrossOrigin 通配符 解决跨域问题