mocker-api这里主要讲我在反向代理遇见的问题,其他的请看官方文档。
在我主要用来进行开发的公司的电脑上这样匹配接口就可以代理上,但是按照文档上的直接反向代理的写法却代理不成功
'/:owner/:repo/raw/:ref/*': 'http://127.0.0.1:2018'
但是在我自己的电脑上接口竟然没匹配到!
开始我以为是新版本的webpack-dev-server的问题导致我本地服务起的有问题,虽然爆出了这个警告,但是我可以访问我的页面,只是mock反向代理不成功而已,直接mock假数据就可以成功
WeChat3ccbcd8e228a5aa0ae7d7538fb46be26.png
最后发现按照文档上以正则匹配的形式去写才可以匹配上!
'/:owner/:repo/raw/:ref/(.*)': 'http://127.0.0.1:2018'
const proxy = {
// Priority processing.
// apiMocker(app, path, option)
// This is the option parameter setting for apiMocker
_proxy: {
proxy: {
'/repos/(.*)': 'https://api.github.com/',
'/:owner/:repo/raw/:ref/(.*)': 'http://127.0.0.1:2018'
},
changeHost: true,
// modify the http-proxy options
httpProxy: {
options: {
ignorePath: true,
},
listeners: {
proxyReq: function (proxyReq, req, res, options) {
console.log('proxyReq');
},
},
},
},
}
module.exports = proxy;
当我的node版本变为v10.6.0,发现我的代理需要/repos/(.)变回为/repos/
mocker-api 的version为1.9.0我需要这样去匹配路由/repos/(.*)
mocker-api 的version不同版本是否为不同的匹配规则有待验证
网友评论