vue——前端跨域

***针对的是不一样域名、不一样协议的跨域:后端

一、找到config文件中开发环境的配置文件——dev.env.js,在里面将要跨域的域名配置进去api

 

二、找到config文件中线上环境的配置文件——prod.env.js,在里面将要跨域的域名配置进跨域

 

 三、配置完后,还须要在config的index.js中配置对外的跨域域名,target的值为要跨域的域名(其余文件才能正常找到这个域名)浏览器

 

注:^api 默认替代了你要跨域的接口的域名安全

因此,在调用跨域接口的地方,跨域直接以 /api/***的形式去访问服务器

 

 这个时候,还会出现一个问题,明明写的是post的方法,可是为猫会被浏览器解析为OPTIONSpost

说到底,是这个跨域的问题没有完全解决,还有一个顽症待治理网站

简单的说,就是“非简单请求”在跨域时,浏览器会默认自动帮你发一个OPTIONS请求,到服务器端请求服务器确认该请求的合法性,服务器端必须得有相应的路由处理该请求,并认真返回200响应,而后浏览器才会再次发出正常的、你须要的请求。url

这个你能够和大家的后端商量,固然,若是后端大哥说会影响网站安全性这个问题,你也能够本身判断,下降请求复杂程度,将“复杂请求”降至“简单请求”spa

找到接口的拦截器部分,加上url的判断,不是本服务器上的域名,就降级(个人就一个跨域的域名,因此用的是==判断的)

 

这是我处理的方法,百度借鉴,可是一步一步走下来,另有收货,但愿对有须要的人有帮助

相关文章
相关标签/搜索