Arguments are parsed from body instead of xmlContent #205
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue:
PSR7 StreamInterface docblock of getContents() says
but casting StreamInterface to string returns the whole stream
As
Request::arguments
callsStreamInterface::getContents
,Document::fromXmlString
gets the remaining content of the stream and not the whole thing, which can cause issues like :when trying to get the arguments twice
What I did
Request::arguments
now callsbody()
instead ofxmlContent()
in order to get the whole body, which makes sense because of PSR7 specifications.How to test
One way to test it is to try reading twice the request content. Before this fix, an error is thrown at second reading.
no