过客春风 發表於 2020-4-2 14:41:00

vue 解决项目接口跨域,线上域名与本地开发域名不一样的问题

<p>在本地开发的时候,调用接口,出现跨域的问题,后台也能给解决,但是可以在vue项目里面的</p>
<p>config文件夹里面的index.js里进行配置,本地访问无压力</p>
<p><img src="https://img2020.cnblogs.com/blog/997371/202004/997371-20200402142948190-1497231367.png"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>如果是以api开头的请求,会转到定义的地址上来。调用的时候直接'api'+'接口名'</p>
<p>但是在生产环境下,域名也都变了,我们还要手动配置或更改这些地址比较麻烦,可以前端这边简单配置,就可以自动获取当前域名,给替换掉</p>
<p>&nbsp;</p>
<p>具体配置<br>在项目中找到以下两个文件:</p>
<p>config/dev.env.js&nbsp; 和&nbsp; config/prod.env.js</p>
<p>在config/dev.env.js文件中加入一行代码:BASE_API:&nbsp;'"//ku.bbtyun.com"'</p>
<p><img src="https://img2020.cnblogs.com/blog/997371/202004/997371-20200402143614591-561705356.png"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><br>&nbsp; &nbsp; &nbsp; &nbsp;</p>
<p>在config/prod.env.js文件中加入一行代码:&nbsp;BASE_API:&nbsp;'"//ku.bbtyun.com"'</p>
<p><img src="https://img2020.cnblogs.com/blog/997371/202004/997371-20200402143635779-212274315.png"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p><br>&nbsp; &nbsp; &nbsp; &nbsp;</p>
<p>在src/main.js文件中配置全局变量(挂在vue原型上)<br>&nbsp; &nbsp; process.env是一个全局变量,能够判断当前环境。</p>
<p>&nbsp; &nbsp;&nbsp;<img src="https://img2020.cnblogs.com/blog/997371/202004/997371-20200402143713145-1687027306.png"></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>使用</p>
<p><img src="https://img2020.cnblogs.com/blog/997371/202004/997371-20200402143931424-1187830895.png"></p>
<p>&nbsp;</p>
<p>&nbsp;BASE_URL&nbsp; &nbsp; &nbsp; &nbsp;ku_api前面自动加上配置的域名</p>
<p>&nbsp;</p><br><br>
来源:https://www.cnblogs.com/majuan/p/12619758.html
頁: [1]
查看完整版本: vue 解决项目接口跨域,线上域名与本地开发域名不一样的问题