webpack devServer代理跨域get请求成功,post请求失败403 Forbidden

一般情况,这样配置代理跨域即可

devServer: {
  ...
  proxy: {
    '/api': {
      target: "http://192.168.5.102:8080",
      changeOrigin: true
    }
  },
}

但是在后台将允许的跨域地址指定为一个后,上述配置便对post请求不生效了,也就是post请求跨域失败,而get请求成功。
对比get和post请求的不同,发现get的请求头里面没有origin字段,而post请求里面有origin字段。

解决:在webpack的devServer配置

devServer: {
  ...
  proxy: {
    '/api': {
      target: "http://192.168.5.102:8080",
      changeOrigin: true,
      headers: {
        host: "http://192.168.5.102:8080",
        origin: "http://192.168.5.102:8080"
      }
    }
  },
}

你可能感兴趣的:(webpack devServer代理跨域get请求成功,post请求失败403 Forbidden)