本文介绍了vue-cli 接口代理配置,分享给大家,具体如下:
一些同学在配置接口代理时,会有疑问 我配置成功了为什么接口还是不通 ,其实代理已经成功 只是 接口访问地址规则没搞清楚
下面以本地测试为栗子 向大家介绍
一些基本操作这里就不介绍了
找到vue-cli config 文件夹下的 index.js 这是是配置接口规则的文件 同目录下建立 proxyConfig.js 一些同学习惯直接在原文件修改 ,也是可以但推荐使用新建文件的方式:
module.exports = { proxyList: { '/api': { target: 'http://localhost:3000', (这里是代理接口的位置) changeOrigin: true,(允许跨域,如果这不写,调用接口接口时会有跨域错误说缺少请求头) pathRewrite: {'^/api': '' } (路由规则下面详细介绍) } } }
******路由规则*******
上述代码执行之后,意思就是 只要在接口中看到‘/api‘ 会自动变成我们设置的地址,那么我们在设置的时候可以规范接口书写标准 就用到了这个属性 pathRewrite 路径重写{'^/api': '' } 是指你想让路由变成什么样子 ,如果是空 那么在解析时 如果我们的接口写的是 $http.get('/api/good') 那么在服务端我们将会看到 /good的访问,如果此时在服务端并没有相应的路由匹配,客服端就会显示报错,端口号还是客户端的端口号,所以很多同学就错觉没有起作用 ,同理如果我们设置{'^/api': '/api' } 那么在服务端将会看到/api/goods 的接口访问,意思就是不仅将/api自动解析成代理地址,还会作为服务端的路由展示。
另外在设置路由规则注意分隔符/ 有些同学喜欢这样写 target: 'http://localhost:3000/', 自己写端口后面加上一个分隔符,会发现路由对不上,这时你需要在命名的时候也要加上‘/' 路由规则也要加上‘/' 接口才能对,不然 会发现请求接口的时候多了一个分隔符 如:'/api//goods'。
设置完之后,在index.js 里面 引入 proxyConfig.js,设置 proxyTable 完成设置
const proxyConfig = require('./proxyConfig') module.exports = { dev: { env: require('./dev.env'), host: 'localhost', port: 8188, autoOpenBrowser: true, assetsSubDirectory: 'static', assetsPublicPath: '/', proxyTable: proxyConfig.proxyList, cssSourceMap: false, } }
请求时 这样写
复制代码 代码如下:axios.get('/api/goods').then((res)=>{console.log(res.data);}}).catch((err)=>{console.log(err);}})
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
更新动态
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]