1.什么叫跨域问题
浏览器使用ajax时如果请求了的接口地址和当前打开的页面地址不同源称之为跨域
(1) ajax :浏览器只有使用ajax发送请求才会出现跨域。href属性 与src属性不会出现跨域
(2) 接口地址: ajax请求的url
(3) 打开的页面:当前页面的window.location.href
(4)不同源:浏览器使用ajax,向不同源的接口发送请求, 称之为跨域访问
2.解决跨域问题
(1). 在每个接口里面插入这段代码
// 设置响应头,允许资源被访问/共享
res.setHeader('Access-Control-Allow-Origin','*'); // *表示所有的请求路径都可以请求这个接口
(2).在接口外插入这段代码
// 中间件
// 使用中间件的的方式来设置资源共享,这样的话就不用在没哟个接口中设置了
app.use((req,res,next)=>{
// 在这里设置响应头,允许资源共享
res.setHeader('Access-Control-Allow-Origin','*');
next();
})
3.中间件
- 就是服务器开启之后和路由响应之前执行的一个函数.
- 这个函数是可以操作req,res的.
- next()函数是让你去执行下一个中间件的.
// 中间件
app.use((req,res,next)=>{
console.log('LOGGED1');
req.requestTime = Data.now(); // 获取当前系统时间,赋值给req的一个属性
next();
});
4.ip地址与域名
给req的一个属性
next();
});
4.ip地址与域名
![UaRmrR.jpg](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9zMS5heDF4LmNvbS8yMDIwLzA3LzE1L1VhUm1yUi5qcGc?x-oss-process=image/format,png)