规范说:
新建立的流的标识符在数值上必须大于发起端点已打开或保留的所有流。这管理使用 HEADERS 帧打开的流和使用 PUSH_PROMISE 保留的流。接收到意外流标识符的端点必须以 PROTOCOL_ERROR 类型的连接错误(第 5.4.1 节)响应。
对于发送服务器的情况PUSH_PROMISE
,符合标准的服务器必须发送严格增加的流 ID,这对我来说是有意义的。但我不明白客户应该如何检测这种情况。
例如,在一个连接上,如果服务器发送:
PUSH_PROMISE
承诺流 2PUSH_PROMISE
承诺流 4
由于并发,客户端可能会收到
PUSH_PROMISE
承诺流 4PUSH_PROMISE
承诺流 2
规范会让我认为客户端应该对此出错,但服务器没有做错任何事情。
我在这里想念什么?