1
我幾乎是nodejs的新手。我正在研究一個小型nodejs微服務,並且它運行良好。但按照最近的要求,這項服務需要支持HTTP/1.1管道。但我無法在nodejs文檔中找到如何啓用/支持該功能。Nodejs HTTP/1.1管道支持
請指導我找到合適的doc/module/resource來實現HTTP/1.1管道。
謝謝。
我幾乎是nodejs的新手。我正在研究一個小型nodejs微服務,並且它運行良好。但按照最近的要求,這項服務需要支持HTTP/1.1管道。但我無法在nodejs文檔中找到如何啓用/支持該功能。Nodejs HTTP/1.1管道支持
請指導我找到合適的doc/module/resource來實現HTTP/1.1管道。
謝謝。
來自@shaochuancs和@Helen的評論是關於nodejs http 客戶端。
如果您需要完全依賴於nodejs核心庫的HTTP管道的服務器實現。
HTTP服務器端流水線支持是內置的,並且已經在nodejs中正確(我剛剛在v5.5.0 v7.0.9和v6.2.1上測試過測試)。
要測試流水線支持,只需在同一個tcp/ip連接中鏈接兩個HTTP請求。你可以使用telnet或netcat(nc)來完成。
# telnet, connecting to port 80, chaining 2 requests on /login
# for host foo.com
(echo -en "GET /login HTTP/1.1\nHost: foo.com\nConnection: keep-alive\n\nGET /login HTTP/1.1\nHost: foo.com\n\n"; sleep 10) | telnet localhost 80
# same thing using printf and netcat
printf "GET /login HTTP/1.1\r\nHost: foo.com\r\nConnection: keep-alive\r\n\r\nGET /login HTTP/1.1\r\nHost: foo.com\r\n\r\n" | nc -q 10 localhost 80
然後計算響應的數量,您應該得到2(如果不支持流水線操作,則爲1)。在輸出中搜索'HTTP/1.1 200 OK'。
http://stackoverflow.com/a/5776649/5528611 – Helen
還有一個類似的問題:http://stackoverflow.com/questions/30204528/node-js-pipelining-http-client-agent但這些是幾年前。 – shaochuancs