微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

webpack-dev-server返回504,而后端返回204

如何解决webpack-dev-server返回504,而后端返回204

这是一条错误文本(应用程序在所有204次响应中均崩溃):

[HPM] Error occurred while trying to proxy request /rest/profiles/change-password from site.loc:3005 to https://site.loc (ECONNRESET) (https://nodejs.org/api/errors.html#errors_common_system_errors)

已调试的后端响应。它返回204状态代码,其主体为空(数据= null)。如果我构建一个应用程序,则一切正常。再过一会:其他开发人员的MAC OS上不会发生这种情况。

我的webpack devServer配置:

  devServer: {
    contentBase: PATHS.dist,host: appDomain,proxy: {
      '/rest': {
        target: appUrl,secure: false,changeOrigin: true
      },...
 }

我的环境:

Windows 10 Pro x64
node version: v12.18.4
webpack-dev-server: "^3.11.0",

请帮助!

解决方法

我花了大约3天的时间解决这个错误,我的答案可以帮助任何人... 我不知道为什么会发生此错误,好人帮我编写了这段代码:

    proxy: {
      '/rest': {
        target: appUrl,secure: false,changeOrigin: true,onProxyRes: function (proxyRes,req,res) {
          console.log(proxyRes.statusCode);
        },onError: function (err,res) {
          console.log(`req.body: ${req.body}`); // here it returned undefined
          console.log(`err.code: ${err.code}`);
          if (err.code === 'ECONNRESET') {
            res.writeHead(204,{'Content-Type': 'application/json'});
            res.end();
          }
        },},

以前尝试使用webpack-dev-server绕过方法axios拦截器来执行此操作,但没有成功。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。