devServer: {
contentBase: path.resolve(__dirname,'dist'),
open: true,
port: 8090,
hot:true,
proxy: {
'/react/api': {
target: 'https://www.tangziyao.site',
//secure: false,
pathRewrite: {
'header.json':'demo.json'
},
changeOrigin: true,
headers:{
...
}
}
}
}
这样配置之后,如果我们发起了这样的请求:
this.axios.get('/react/api/header.json').then( res => {
console.log(res)
})
实际是devServer帮助我们做了一次转发,也就是请求的是:
https://www.tangziyao.site/demo.json
当我们的请求是https
协议的时候,我们需要加上secure: false
。
changeOrigin: true
可以将发送请求头中host会设置成target,有些网站针对header中的host字段做判断,所以一般将changeOrigin
设置为true。