ng-file-upload 在 2 分钟后超时,即使后端正在上传

ng-file-upload times out after 2 minutes even though the uploading is in process in backend

我在 angularjs 中使用 ng-file-upload 时遇到问题。即使后端正在上传(node-js 代码),chrome 也会在 2 分钟后超时并抛出 net::ERR_EMPTY_RESPONSE。我尝试添加超时

Upload.upload({
     url: uploadFileAPI,
     fields: uploadjson,
     file: file,
     timeout: 600000
})

但还是不行。 API 需要 4-5 分钟才能响应,但调用会在 2 分钟后超时。有人可以帮忙吗?

我通过在节点 api 调用中提供请求超时解决了这个问题。

uploadFileAPI : function(req, res, next) {          
        var form = new multiparty.Form();
        req.setTimeout(1800000); 
       // ...
}

我还在我的代码中添加了一个全局超时拦截器。

app.factory('timeoutHttpIntercept', function($rootScope, $q) {
    return {
        'request': function(config) {
            config.timeout = 1800000;
            return config;
        }
    }
})
.config(function($httpProvider) {
    $httpProvider.interceptors.push('timeoutHttpIntercept');
});