解决跨域问题

本文介绍了浏览器的同源策略以及由此引发的跨域问题。针对跨域,文章提到了三种解决方案:JSONP(需要服务端配合,已不太流行)、CORS(实际业务中常用,需服务端配置)和Vue、uniapp开发阶段常用的proxy代理。详细阐述了proxy在vue.config.js中的配置方法,适用于开发环境的跨域请求。
摘要由CSDN通过智能技术生成

在发送请求后,看到以下错误提示,先确认接口地址是否正确,如果确定是正确,由于 浏览器 跨域了

 watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pin5YWJVg==,size_20,color_FFFFFF,t_70,g_se,x_16

跨域的问题是由于 浏览器的同源策略 .同源策略是浏览器的基本安全策略.目的是为了更加安全.

同源: 协议,主机[域名,IP],端口都一致才可以.

解决方案:

  • jsonp 需要服务端配置 返回数据并进行回调操作 不太流行了

  • cors 在服务端配置运行跨域 实际公司业务采用的一种方式 要求服务端配合

  • proxy 开发过程中使用 上线也可以用 基于开发者服务器进行配置转发请求

 

常见跨域场景:

URL                                      说明                    是否允许通信
http://www.domain.com/a.js
http://www.domain.com/b.js         同一域名,不同文件或路径           允许
http://www.domain.com/lab/c.js

http://www.domain.com:8000/a.js
http://www.domain.com/b.js         同一域名,不同端口                不允许

http://www.domain.com/a.js
https://www.domain.com/b.js        同一域名,不同协议                不允许

http://www.domain.com/a.js
http://192.168.4.12/b.js           域名和域名对应相同ip              不允许

http://www.domain.com/a.js
http://x.domain.com/b.js           主域相同,子域不同                不允许
http://domain.com/c.js

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值