vue devServer proxy

1.是因为代理对象没有开启服务,不能访问到对象服务器
2.代理规则写错
3.请求超出代理timeout,代理失败

我出现的问题是:
时不时出现代理错误
线上环境正常

axios 请求的timeout 为 300000
我的proxyTimeout: 3000
某些接口速度慢的时候 所以请求失败
修改我的proxyTimeout属性

devServe -> proxy 的配置选项
http-proxy-middleware
http-proxy-middleware配置地址

常用配置:
target
pathRewrite
changeOrigin // 默认false 请求头host为浏览器发送的host 设置为true 发送请求头中host会设置成target·

事件
onProxyReq: (proxyReq, req, res, options) => {

}

'^/api': {
        target: process.env.VUE_APP_BASE_API,
        secure: false,
        ws: false,
        changeOrigin: true,
        cookieDomainRewrite: '',
        proxyTimeout: 300000,
        pathRewrite: {
          '^/api': ''
        },
        onProxyReq: function(proxyReq, req, res, options) {
          if (req.body) {
            // 数据类型 application/json application/x-www-form-urlencoded 在POST操作时会出错,这是代理中间件的bug。修正如下:
            const reg = new RegExp('application/')
            if (reg.test(proxyReq.getHeader('Content-Type'))) {
              const bodyData = JSON.stringify(req.body)
              proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData))
              proxyReq.write(bodyData)
            }
          }
        }
      }
    },
Logo

前往低代码交流专区

更多推荐