标签: node.js-connect

Express.js 文件上传:60 秒超时和 HTTP 连接超时错误

我将很快解释我的应用程序的用途:

\n
    \n
  1. 客户端上传文档
  2. \n
  3. 它被处理
  4. \n
  5. 服务器创建 pdf 的快照图像
  6. \n
  7. 服务器发回快照图像的路径
  8. \n
\n

现在的问题是,从步骤(1)到(4)的整个过程需要超过 60 秒。

\n

起初我有一个使用旧代码的代码express.bodyParser(),但在 60 秒后我会收到以下错误:

\n
Error: Request aborted\n    at IncomingMessage.onReqAborted (/DIR_TO_NODE/node/file-upload-error/node_modules/express/node_modules/connect/node_modules/multiparty/index.js:131:17)\n    at IncomingMessage.EventEmitter.emit (events.js:92:17)\n    at abortIncoming (http.js:1911:11)\n    at Socket.serverSocketCloseListener (http.js:1923:5)\n    at Socket.EventEmitter.emit (events.js:117:20)\n    at TCP.close (net.js:466:12)\n
Run Code Online (Sandbox Code Playgroud)\n

以及操作系统中的文件tmp目录中的文件被删除。

\n

所以我决定使用mulster中间件模块来代替 express.multipart().

\n

此更改解决了 1/2 的问题,因为它消除了我之前遇到的 Express.js 多部分错误。

\n

这意味着我的程序在 60 秒后继续运行,这很好,但在同样的 60 秒后我仍然从客户端收到 HTTP 超时。

\n

现在我知道像 Chrome 这样的浏览器可以修复 60 秒超时,但我的问题如下:

\n
    \n
  • 有没有办法防止 60 秒后发生 …

file-upload multipart node.js express node.js-connect

4
推荐指数
1
解决办法
5475
查看次数

为什么 clearInterval 对函数不起作用

这是代码

var t = ()=>{

    setInterval(()=>{

        console.log('hello')

    },1000)


}

t();

clearInterval(t)
Run Code Online (Sandbox Code Playgroud)

为什么 clearinterval 不会阻止 setInterval 的执行?

javascript node.js node.js-connect node.js-client

4
推荐指数
1
解决办法
1309
查看次数

3
推荐指数
1
解决办法
340
查看次数

出现错误:连接 ECONNREFUSED 127.0.0.1:3306

我是 Node.js 的初学者,正在学习有关如何为 Android 设置 Node.js 服务器的教程。当我执行此命令时,nodemon app.js出现此错误

[nodemon] 1.19.0
[nodemon] to restart at any time, enter `rs`
[nodemon] watching: *.*
[nodemon] starting `node app.js`
--Server started at port: 8080--
Error: connect ECONNREFUSED 127.0.0.1:3306
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1054:14)
    --------------------
    at Protocol._enqueue (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\protocol\Protocol.js:144:48)
    at Protocol.handshake (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\protocol\Protocol.js:51:23)
    at Connection.connect (F:\soi19\android-login-register-system\server\node_modules\mysql\lib\Connection.js:119:18)
    at Object.<anonymous> (F:\soi19\android-login-register-system\server\routes.js:8:4)
    at Module._compile (internal/modules/cjs/loader.js:759:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:770:10)
    at Module.load (internal/modules/cjs/loader.js:628:32)
    at Function.Module._load (internal/modules/cjs/loader.js:555:12)
    at Module.require (internal/modules/cjs/loader.js:666:19)
    at require (internal/modules/cjs/helpers.js:16:16)
Run Code Online (Sandbox Code Playgroud)

我尝试过其他答案,例如更改host: 'localhost'host:'127.0.0.1'以及类似的其他答案,但没有一个有效。任何帮助,将不胜感激。

node.js node-modules node.js-connect

3
推荐指数
1
解决办法
2万
查看次数

在fs.readFile中使用通配符/ glob/minimatch(在Express应用程序内)

我有一个(迷你)快递应用程序.基本上只显示覆盖率结果.我有:

app.get('/coverage', function(req, res) {
   fs.readFile(path.join(__dirname, '/coverage', 'PhantomJS 1.9.2 (Linux)', 'lcov-report', 'index.html'), 'utf8', function(err, content) {

        if(!err) {
            res.send(content);
        } else {
            res.setHeader({ status: '404' });
            res.send('');
        }
    });

});
Run Code Online (Sandbox Code Playgroud)

我的问题是测试运行器,在创建测试覆盖率报告时可以更改文件夹路径,可以是Phantom 1.9.3或类似的东西.所以我想我需要在中间建立一些带有通配符的路径(在coverage和lcov-report之间).

怎么能实现这一目标?

node.js express node.js-connect

2
推荐指数
1
解决办法
5331
查看次数

Node.js Express通配符(catch-all)将无法在App root上运行

我没有使用任何模板引擎.我想将所有内容重定向到我的静态文件/public/desktop.html

app.use(express.static(__dirname + '/public'));

function route(req, res, next) {
    res.sendfile(__dirname + '/public/desktop.html');
    myURL = url.parse(req.url).pathname;
}
Run Code Online (Sandbox Code Playgroud)

如果我使用它并访问url上的'localhost:8080/anypath,它会很好用

但如果我尝试'localhost:8080 /'我什么也得不到:

app.get('*', route); 
Run Code Online (Sandbox Code Playgroud)

如果我使用其中任何一个,我无法访问任何内容:

app.get('/', route);
app.get('/*', route); 
Run Code Online (Sandbox Code Playgroud)

node.js express node.js-connect

2
推荐指数
1
解决办法
1127
查看次数