问题描述
这是一条错误文本(应用程序在所有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拦截器来执行此操作,但没有成功。