如何解决跨域问题

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)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值