vite项目 同时配置了代理 和mock,那么当请求路径都匹配的时候 谁先被执行?
假如vite项目中 配置了代理规则
proxy: { //代理 '/iotp': {
target: http://localhost:10000/abc/, //请求的url,例后端给的地址
changeOrigin: true, //当进行代理时,Host 头部的源默认会保持原状;你可以设置 changeOrigin 为 true 来覆盖这种行为;变成target对应得地址
secure: false, // 关闭SSL证书校验
rewrite: path => { //重定地址,比如:把以/aaa开头的地址换成''
return path.replace(/^\/iotp/, '');
},
},
}
同时也配置了mock
{ url: `iotp/product/list`,
timeout: 2000,
method: 'get',
response: () => {}
}
那么当访问http://localhost:8080/iotp/product/list的时候
会被代理拦截 代理到 http://localhost:10000/abc/product/list
还是被mock拦截返回mock数据?
试了下走了mock,为什么是mock先拦截到了?
回答:
因为 mock 原理大致是直接在浏览器运行代码中拦截重写 XMLHttpRequest 类实现的,而 vite 服务器 proxy 是服务器级别的;mock 先被执行
回答:
mock。匹配到了。就不走你的请求了。
以上是 vite项目 同时配置了代理 和mock,那么当请求路径都匹配的时候 谁先被执行? 的全部内容, 来源链接: utcz.com/p/935059.html