如何在nodejs中closures请求?

我拥有的:

我使用expression式 框架使用node.js ,并且我正在构build一个可以上传文件的表单,我正在使用node-formidable 。

有什么问题

我的问题是,我无法closures请求,如果我发现上传的文件错误。 我想检查文件types,大小等。所以我可以得到正确的file upload,而文件实际上没有上传,所以我不浪费时间。

所以问题是我无法停止HTTP请求。

我曾经尝试过

这是我迄今为止所尝试的:

request.connection.destroy(); response.end('something went wrong...'); 

我假设connection.destroy()中止请求,我知道这是因为它触发formidableforms中止事件( form.on('abort', function(){ ... }) )但该文件仍在上传,并且该响应没有在file upload之后到达。

那么我应该如何closuresHTTP请求,并将消息发送回客户端呢?

编辑:和其他东西,当我不使用response.end()然后它的作品,除了客户端等待的答案,这很奇怪:\

正确的做法是:

 request.pause(); response.status = 400; response.end('something went wrong...'); 

来源: https : //groups.google.com/forum/?fromgroups=#!topic/ nodejs/ 2gIsWPj43lI

尝试使用以下代码:

  1. 当你的服务器端validation失败时,请给出如下响应:

    res.json({'IsFileUploaded':'false', 'requiredFileSize': '1000bytes', 'actualFileSize': '800bytes', 'AlertMsg':'File size should be at least 1000 bytes....'})

    它closures连接以及您可以传递您的数据在JSON格式