连接器负责接收请求,处理器负责解析请求,每个处理器拥有自己的 Request 和 Response 对象,这两个对象可以重复使用
处理器处理流程
- 解析连接信息:设置 Internet 地址和代理信息
- 解析请求行:请求方法、URI、协议版本,查询参数(如果有),keep-alive 属性,session ID(如果禁用了 cookie),标准化 URI 地址
- 解析请求头:将请求头设置到对应的属性中,其中有几个重要的属性,cookie,content-length 和 content-type(在处理正文时会用到),conection(主要检查是否close 值)
- 解析参数:先解析 URI 中的查询参数,再解析正文中的参数
- 调用容器的 invoke 方法