簡體   English   中英

我們可以在發送響應之前停止由Node.js中的http發布請求進行的正在進行的Server進程嗎?

[英]Can we stop ongoing Server process made by http post request in Node.js before sending a response?

我制作了一個應用程序,在該應用程序中我對節點服務器進行了Ajax調用,但是問題是,如果用戶重定向到另一個頁面,那么服務器也會繼續處理由Ajax調用提出的請求,並且在完成該請求之后,它將開始處理新的請求。重定向請求。

我正在使用express作為框架,我不想了解客戶端中止功能,我所要做的就是停止服務器端處理Ajax調用所產生的請求,並立即開始處理新請求。

我需要做的就是停止服務器端處理Ajax調用的請求,並立即開始處理新請求。

如果您的服務器尚未處理舊請求(無論是否仍在處理舊請求),那么您將面臨更大的問題,僅通過取消不再需要的請求就無法解決。

無論舊請求是否仍在處理中,服務器都應始終處理新請求。 為了確保能夠做到這一點,您需要確保永遠不要在處理程序中使用任何阻塞調用。 沒有fs.readfileSync類的fs.readfileSync (或名稱中帶有Sync的任何東西),沒有長時間運行for循環或while循環(除非它們處於async function且不阻塞事件循環)等。

當您在處理新請求之前不阻止舊請求時,您將不會遇到問題中所描述的問題,在該問題中,您要詢問的是特定的解決方案而不是問題,並且所要解決的問題有兩個:仍然無法解決問題,因此無法實現。

暫無
暫無

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

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