proxy: {
'/apis': { //将www.exaple.com印射为/apis
target: 'https://www.exaple.com', // 接口域名
secure: false, // 如果是https接口,需要配置这个参数
changeOrigin: true, //是否跨域
pathRewrite: {
'^/apis': '' //需要rewrite的,
}
}
}
为什么需要代理:
设置代理相当于你的请求是在请求dev-server,node再请求你的远程服务器,后台之间的请求也没有跨域问题,node请求到数据再返回前台。node相当于是一个中间层,实现了前后端分离,不用再打包成一个项目。
pathWrite参数:
用代理,首先需要一个标识,告诉node你的连接需要代理,不然可能html、css、js这些静态文件都跑去代理,所以只要接口用代理,其他用本地。
'api/':{ }就是告诉node,接口只是要'/api'开头才用代理,所以api/xx最后代理路径就是http://xxx.xx.com/api/xx,Network里查看到的请求路径是http://localhost:3000/api/xx。可是正确的接口路径并没有/api,所以就需要pathWrite修改代理路径,用'^api/':'',把'/api'去掉,这样既能正确标识,又能在请求接口时去掉'api'。