观看视频
Go 标准包阅读
基于 Go 1.10.2
net 包
- http/server.go
- http/request.go
- textproto/reader.go
读取位置
- textproto/reader.go(
140行
)
问题
1.各个系统的回车换行符区别
- 注意:
10.13及其以上是macOS系统
2.URI,URL和URN的区别
3.HTTP CONNECT方法介绍
会议讨论小结
可以建立一个代理服务器到目标服务器的透明通道(tcp连接通道),中间完全不会对数据做任何处理,直接转发(支持https,一种翻墙的手段,专线独享)
4.peek读取字节内部实现
- 这里先peek获取流数据(注意:
这里没有对Peek的错误进行处理,而是根据是否Buffered读取到数据来判断错误
) - 为什么没有对Peek的错误进行处理呢?
主要是因Peek失败了也有可能不会返回错误
golang读取字节表现形式是阻塞式的,但其实底层是用了非阻塞式的NIO,如果没有读取到数据会定时轮询读取
5.http header尾部的符号什么情况下会存在\n\n的情况?(
待解决,欢迎在下面评论
)
看源码发现hearder结尾会存在\r\n\r\n
和\n\n
两种字符情况
网络上查资料发现只会存在\r\n\r\n