我的HTTP服務器需要確保將HTTP響應傳遞到客戶端。Node.js,如何確保客戶端從服務器獲取數據,而不'確認'來自客戶端的請求
我覺得(而且我會實現它),最正確的方法是發送來自客戶端的「我收到數據」請求。
但我有一點學術問題:
對服務器的一些其他裝置,用於檢測響應是否傳遞到客戶端或沒有(說由於客戶端的計算機被直接命中的蒸發數據傳輸期間的H-bomb)?
類:http.ServerResponse
...
事件: '完成'
當響應已經發射發送。更具體地說,當響應標頭和主體的最後一段已被 傳遞給操作系統以通過 網絡傳輸時,發出此事件 。這並不意味着客戶已收到任何東西。
此事件發生後,將不會再有事件發生在響應 對象上。
此外我沒有發現'net'模塊文檔中沒有更好的東西。
所以看來我只能知道我的數據是在內核緩衝區中通過網絡傳輸。
我可以通過Node.js的手段檢測到此傳輸中的一些錯誤嗎?
我可以通過一些易於實現的非Node.js手段來檢測此傳輸中的一些錯誤嗎?
任何鏈接和想法,這不是一種HTTP方式,甚至不是TCP方式也讚賞。
事實上,我在Net文檔中也看到了這個'FIN',但是由於「在此事件之後,HTTP文檔中的響應對象字符串中沒有更多事件會發出」,我只是忘了它。有趣的是,'http。IncomingMessage'包含'socket'屬性,我認爲可以訂閱'end'事件。有趣的是,爲什麼http.ServerResponse對象不包含'套接字'屬性。無論如何謝謝,你的帖子很有用。 – Dzenly