如何让 webpack-dev-server 具有自定义值的传入请求超时?

Han*_*Lee 2 timeout webpack webpack-dev-server

我有一个带有 webpack-dev-server 的 webpack 配置文件,如下所示。

const webpack = require('webpack');

module.exports = {
    devtool: 'inline-source-map',
    devServer: {
    disableHostCheck: true,
    historyApiFallback: true,
    compress: true,
    host: '0.0.0.0',
    port: 3000,
    publicPath: '/static/js/',
    proxy: {
        '**': {
            target: 'http://localhost.idincu.net:8080',
            secure: false,
            prependPath: false,
            proxyTimeout: 1000 * 60 * 10
            }
        }
    },
    plugins: [
        new webpack.NamedModulesPlugin()
    ]
}
Run Code Online (Sandbox Code Playgroud)

现在,ECONNRESET当我使用代理向后端服务器发送请求时,我得到了。发生这种情况的原因可能timeout是 webpack-dev-server 的设置。

我已经深入研究了这一点,以更改 webpack-dev-server 的超时设置。但我失败了。谁能给我一些建议?

我发现的其中一种方法是在 express 上设置超时。或者,如果有一种方法可以使用与我的配置文件相对应的 devServer.before 属性,这对我来说将是一个好方法。

先感谢您。

Han*_*Lee 6

在这里自我回答。

只需timeout: 1000 * 60 * 10像下面一样添加到 devServer.proxy 中即可使其工作。

const webpack = require('webpack');

const devConfig = {
    devtool: 'inline-source-map',
    devServer: {
        disableHostCheck: true,
        historyApiFallback: true,
        compress: true,
        host: '0.0.0.0',
        port: 3000,
        publicPath: '/static/js/',
        proxy: {
            '**': {
                target: 'http://localhost.idincu.net:8080',
                secure: false,
                prependPath: false,
                proxyTimeout: 1000 * 60 * 10,
                timeout: 1000 * 60 * 10
            }
        }
    },
    plugins: [
        new webpack.NamedModulesPlugin()
    ]
};

module.exports = devConfig;
Run Code Online (Sandbox Code Playgroud)