http 报文如果不携带 connection 但是 server 返回了'Connection': 'keek-alive'会建立持久连接么

2020-08-17 14:35:12 +08:00
 aladdindingding

http://www.lzairport.net 爬取这个网站 只要写了'Connection': 'close',就没有响应了 别的网站都没有遇到这样的问题

1055 次点击
所在节点    问与答
6 条回复
aladdindingding
2020-08-17 14:38:49 +08:00
http 请求是自己构造的 不会自动加上'Connection': 'keep-alive'
junnplus
2020-08-17 14:41:16 +08:00
看 http 协议,http/1.1 默认是长链接的
imn1
2020-08-17 15:06:00 +08:00
早年“玩”过 http1.1 keep-alive,玩 是指自己写不出严谨的代码,只能属于测试、学习性质,不能实用
在 socket(client)创建 http 连接,保持 keep-alive,然后在同一个 connection 发送多次 http 请求,前面三次都能收到完整 respond,第四次只能收到部分(没收到结束标志或者字节数少于),好几个网站都是这样,我搞不清原因,也没法问,没人像我这样玩,就这样结束了玩耍

当年测试这个目的是看看能不能减少连接数,爬虫相关
aladdindingding
2020-08-17 15:21:30 +08:00
@imn1 收包确实有很多情况 每个语言的 http 框架发包都不太一样 get 和 connect 请求还好,post 就情况太多了
misaka19000
2020-08-17 15:23:42 +08:00
看 Server 怎么实现咯,我可以忽略该 header,也可以实现该 header 的处理
aladdindingding
2020-08-17 15:46:52 +08:00
@junnplus 意思就是即使我不带 connection 也是长连接了么

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/698952

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX