以此篇文章,来记录遇到的坑,及与他人进行交流.
访问127.0.0.1:3000端口号下的接口下或者后端给你的接口.配置如下
在vite.config.js配置, 他的意思就是当你请求,127.0.0.1:3000/web/aaaaa/啥啥啥的接口地址,你的axios请求路径为就可以写成/api/web/aaaaa/啥啥啥.
export default defineConfig({
server: {
proxy: {
'/api': {
target: 'http://127.0.0.1:3000',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '')
}
}
},
})
详解: changOrigin 就是允许跨域,rewrite就是在这个路径上遇到/api的他就会就此路径上的/api替换为空字符串.
下面以实际项目中,一个案例来演示.
我的后端接口为127.0.0.1:3000/ 请求方式为get,请求结果如下图
接下来在项目中怎么访问的到呢?(如果不想配置请求实例,直接用axios。axios({url:/api})就能请求到结果)
在axios实例中配置基地址,为/api
然后在你需要发起请求的时候,
这样就能拿到结果了.
场景2:
假设请求路径为 http://127.0.0.1:3000/api/user/info,
基地址不变,请求为
结果
当然,这里有一个弊端,就是在请求网址这一块,他显示的是不对的,如果有什么更好的办法,希望前辈多多指教,同时希望多多点赞,评论所遇到的出问题,或有更好的解决跨域方式.如果看着不舒服你就理解为第一个/api其实吧前面的全部干掉了并把第一个/api替换成空,留下了你配置的target这一块.,.实际地址为127.0.0.1:3000/api/user/info