簡體   English   中英

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

[英]webpack-dev-server returns 504 while backend returns 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 狀態代碼(數據 = 空)。 如果我構建一個應用程序一切正常。 還有一點:它不會發生在其他開發人員的 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, req, 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 攔截器來做到這一點,但沒有成功。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM