HTTP/2: POST body is continued to be sent although stream is closed
Reported by
niklas.a...@gmail.com,
Sep 1 2016
|
||||
Issue description
Chrome Version : 53.0.2785.89 (Official Build) m (32-bit)
URLs (if applicable) : -
Other browsers tested:
Safari: -
Firefox: OK
IE: -
What steps will reproduce the problem?
(1) Send a big POST request.
(2) Server answers request before the complete request has been sent.
What is the expected result?
Browser stops sending further DATA frames, because the stream has already been closed by the server by sending a response.
What happens instead?
The complete request body is sent although the server's last DATA frame (containing the response body) has the flag END_STREAM. As consequence the stream is in state “closed”.
RFC7540 (chapter 5.1):
"An endpoint MUST NOT send frames other than PRIORITY on a closed stream."
I attached the output of net-internal. It shows that a big POST request is sent on stream 55. A "400 Bad Request" response is sent by the server but the client continues to send further DATA frames.
,
Sep 1 2016
You didn't create the net-internals log correctly. Instructions: https://sites.google.com/a/chromium.org/dev/for-testers/providing-network-details
,
Sep 2 2016
I reproduced the issue and created the net-internals log as described. The issue occurs on stream 9 (to lu314985.wdf.sap.corp).
,
Sep 2 2016
This is somewhat related to issue 603182 and issue 606990, because all three are essentially about state transitions not happening until Chromium is done sending data.
,
Sep 8 2016
|
||||
►
Sign in to add a comment |
||||
Comment 1 by elawrence@chromium.org
, Sep 1 2016