簡體   English   中英

如何在nodejs中關閉請求?

[英]How to close a request in nodejs?

是)我有的:

我正在使用帶有express框架的 node.js ,並且正在構建一個可以上傳文件的表單,為此我使用了node-formidable

有什么問題

我的問題是,如果我發現上傳的文件有錯誤,則無法關閉請求。 我想檢查文件類型,大小等。這樣我就可以上傳正確的文件,而實際上這些文件沒有上傳,所以我不會浪費時間。

所以問題是我無法停止HTTP請求。

我嘗試過的

到目前為止,這是我嘗試過的:

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

我假設connection.destroy()中止了請求,並且我知道這是因為它會觸發強大的表單中止事件( form.on('abort', function(){ ... }) )但文件仍在上傳,並且上傳文件后響應不會到達。

那么,如何關閉HTTP請求,然后將消息發送回客戶端呢?

編輯:和其他的東西,當我不使用response.end()然后它工作,除了客戶端等待答案,這很奇怪:\\

正確的方法是:

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

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

嘗試以下代碼:

  1. 當服務器端驗證失敗時,給出如下響應:

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

    它會關閉連接,並且您可以以JSON格式傳遞數據

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM