最近在调试 iOS 上的代理,大部分 http 请求都比较标准,但是 QQ 这个就比较奇怪了,大家看一下,翻了下 rfc 好像没看到相关的描述?

最近在调试 iOS 上的代理,大部分 http 请求都比较标准,但是 QQ 这个就比较奇怪了,大家看一下,翻了下 rfc 好像没看到相关的描述?

|
GPUJun 20, 2017
1
图片好像打不开 :ERR_SPDY_PROTOCOL_ERROR
|
|
sc3263Jun 20, 2017
2
你指的是 HTTP pipelining 么?
|
|
sc3263Jun 20, 2017
3
rfc7230 有提到这个。不过貌似还提了一句,
Idempotent methods (Section 4.2.2 of [RFC7231]) are significant to pipelining because they can be automatically retried after a connection failure. A user agent SHOULD NOT pipeline requests after a non-idempotent method, until the final response status code for that method has been received, unless the user agent has a means to detect and recover from partial failure conditions involving the pipelined sequence. 坑很深的样子。 |
|
msg7086Jun 20, 2017
4
没仔细看,但是看着像是 HTTP Keepalive 啊。
|
|
5
不是 pipelinling, 注意看只有 3 个 request, 返回了 5 个 response
|
|
cst4youJun 20, 2017
6
私有协议
|
|
xenmeJun 20, 2017
7
是不是跟抓包方式有关。
之前我用 Windows netsh 抓包然后转了 pcap 之后看到类似的重复的记录。 其实你看 seq no 都是 1808,只是重复包了而已。 |
|
8
@xenme seq no 都是 1808 没变只是说明发送端没在发送数据了,ack 一直在增加啊,说明收到数据了
|
|
sc3263Jun 20, 2017
9
@flicker317 不好意思没注意这个。如果是真的多回复了的话,http/1.1 标准里应该不支持这么玩。。。
|