跨域问题及解决方法

什么是跨域?

  1. 当Ajax发送请求时, 所在的协议/域名(ip)/端口号, 和要请求的目标的协议/域名(ip)/端口号有一个不一样的, 就发生跨域.
  2. 注意其实请求和响应都成功了, 但是在主线程检查是否跨域时, 并且响应头里是否有CORS(如果没有), 则丢弃全部的响应内容, 不会传给JS渲染引擎 处理跨域CORS

 

 解决方法?

// 跨域问题:(服务器和服务器之间不存在跨域问题)
// 开发过程:
// 1. 直接让后台开启cors/jsonp, 直接调用(如果用jsonp你要注意你传参的格式)
// 2. 后台不开cors/jsonp, webpack开发服务器, vue.config.js - 代理转发
// 3. 后台不开cors/jsonp, 自己本地node+express搭建服务器(开cors) - 前端请求本地localhost:4005, 本地的请求转发代码(nodejs代码)

// 打包上线:
// 1. 后台开启cors, 直接用
// 2. 后台不开cors/jsonp, 把前端项目和后台项目放在一个服务器上(同源)
// 3. 后台代码和前端代码不在一起, 本地自己写一个node+express服务器部署(请求自己的)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值