V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
aladdindingding
V2EX  ›  问与答

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

  •  
  •   aladdindingding · 2020-08-17 14:35:12 +08:00 · 1071 次点击
    这是一个创建于 1592 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

    当年测试这个目的是看看能不能减少连接数,爬虫相关
    aladdindingding
        4
    aladdindingding  
    OP
       2020-08-17 15:21:30 +08:00
    @imn1 收包确实有很多情况 每个语言的 http 框架发包都不太一样 get 和 connect 请求还好,post 就情况太多了
    misaka19000
        5
    misaka19000  
       2020-08-17 15:23:42 +08:00
    看 Server 怎么实现咯,我可以忽略该 header,也可以实现该 header 的处理
    aladdindingding
        6
    aladdindingding  
    OP
       2020-08-17 15:46:52 +08:00
    @junnplus 意思就是即使我不带 connection 也是长连接了么
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3315 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 00:43 · PVG 08:43 · LAX 16:43 · JFK 19:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.