导读
这一部分不讲机制,只回答「从哪里读、读哪个版本、代码在哪」。reqwest 锁 tag v0.13.5,下层的 hyper、hyper-util、tower、tower-http 按新项目实际解析到的版本读;全卷沿请求、连接、响应三条主线展开;src 两万行出头,三分之一是异步客户端,另外两套实现(阻塞、WASM)和连接器各占一块。
- 怎么读这一卷:tag 和下层版本;三条主线每一步的函数与讲它的页;feature 逐个核对,同时打开
rustls和native-tls时默认走 native-tls(实测 TLS 1.2),打开hickory-dns就换掉默认 resolver;为什么每个实验客户端都调.no_proxy();README 和文档注释里过时的几处。 - 源码地图:
lib.rs的if_hyper!/if_wasm!怎么让三套实现共用一组类型名;src各文件的行数和分工;cargo tree核实的依赖层次,hyper、hyper-util、tower、tower-http、h2、rustls 各在哪一层。
flowchart TB how[怎么读这一卷] --> map[源码地图] how --> ov["01 全景"] map --> req["02 发请求"] map --> conn["03 连接"] map --> resp["04 响应与策略"]
💬 关联讨论
发起讨论加载中...