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