共计 671 个字符,预计需要花费 2 分钟才能阅读完成。
做抢红包 app 的时候,本地连接后端本地接口,浏览器报跨域的谬误
一通搜寻之后,找到了如下解决办法(本我的项目采纳的 vue2.0,且目前只针对开发环境)
1.config/index.js 文件内的 proxyTable,增加如下配置
2. 申请接口的相干代码
3.npm start 命令重启我的项目
具体讲解如下:
假如申请的是 a 接口,后盾地址为 http://xxx。
那么拼接进去的接口就是 /hello/a
在 proxyTable 的设置中规定,当接口申请地址中有 /hello 时,接口地址为 xxx =》http://xxx/hello/a
hello 只是一个标识,咱们理论须要的是 http://xxx/v1/a
pathRewrite 规定,遇到 /hello 替换为 /v1, 所以失去 http://xxx/v1/a
pathRewrite 经测试,个人感觉是有默认值的
默认值为雷同的字符串,即 pathRewrite 属性不写的话为
pathRewrite: {'^/hello': '/hello'}
而并非 pathRewrite: {'^/hello': ''}
所以,咱们能够不应用多余的 hello 这个名称,简化一下写法
申请接口对立为
axios.defaults.baseURL = '/v1' // 后盾本地
proxyTable 设置为
proxyTable: {
'/v1':{ // 要代理的接口名
target:'http://192.168.10.175', // 要代理的接口地址
changeOrigin:true, // 容许跨域
}
},
参考地址:https://www.cnblogs.com/hangu…
正文完
发表至: javascript
2020-12-31