[Go] 使用net包作为tcp客户端读取http
2023-02-18 15:41:10 时间
1.tcp的客户端,并且直接读取http协议的全部内容,每次读取4096字节,直到最后一个字节是\n并且读取的长度小于4096
conn, err := net.Dial("tcp", "www.baidu.com:80") if err != nil { log.Fatal(err) } _, err = conn.Write([]byte("GET / HTTP/1.1\r\n\r\n")) if err != nil { log.Fatal(err) } var httpBody string var httpSize int for { b := make([]byte, 4096) len, err := conn.Read(b) if err != nil { log.Fatal(err) } httpBody += string(b[:len]) httpSize += len if b[len-1] == '\n' && len < 4096 { break } } log.Println(httpBody, httpSize)
相关文章
- 盘点提高国内访问 GitHub 的速度的 9 种方案
- 学会Linux,看完这篇就行了!
- Django实现WebSocket在线聊天室(channels库)
- Django实现发送邮件
- Hexo+Gitee搭建个人博客
- Linux系统上安装jdk(CentOS 7 )
- Linux常用命令
- Linux服务器上搭建测试环境(war包+tomcat)
- Typora+Picgo+Gitee图床
- 快速入门Golang Fuzz模糊测试
- Git版本控制入门教程(一)
- Git版本控制教程之为项目打上标签(二)
- Git版本控制教程之分支(三)
- Git版本控制教程之在Visual Studio Code中如何使用(四)
- 如何托管你的项目到github上详细教程
- Git提交记录
- 无法下载 http://dl.google.com/linux/chrome/deb/dists/stable/main/binary-amd64/Packages
- git提交报错does not match your user account
- 导出简书的文章生成gitbook上传到github通过xxx.github.io访问
- Git reset 之后 怎么恢复到 reset 之前的节点