-
Notifications
You must be signed in to change notification settings - Fork 125
[Redirect] Allow redirect response to have body #580
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
fabianfett
merged 1 commit into
swift-server:main
from
fabianfett:ff-support-redirect-responses-with-body
Apr 12, 2022
Merged
[Redirect] Allow redirect response to have body #580
fabianfett
merged 1 commit into
swift-server:main
from
fabianfett:ff-support-redirect-responses-with-body
Apr 12, 2022
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
42d9c58
to
d2c0583
Compare
@swift-server-bot test this please! |
FranzBusch
reviewed
Apr 12, 2022
extension RequestBag { | ||
struct StateMachine { | ||
/// The maximum body size allowed, before a redirect response is cancelled. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this belongs to the static let
above right?
@@ -16,14 +16,20 @@ import struct Foundation.URL | |||
import NIOCore | |||
import NIOHTTP1 | |||
|
|||
extension HTTPClient { | |||
fileprivate static let maxBodySizeRedirectResponse = 1024 * 3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could you add a comment here to explain why it is 3kb?
5210407
to
d83b1a0
Compare
### Motivation Currently, we don’t consume the response body of redirect responses. Because of this requests, that receive a redirect response with response body, may hang indefinitely. ### Changes - Consume redirect response body if less than 3kb - Cancel redirect response if larger than 3kb ### Result Redirect responses are consumed. Fixes swift-server#574
d83b1a0
to
5364192
Compare
FranzBusch
approved these changes
Apr 12, 2022
Lukasa
approved these changes
Apr 12, 2022
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Motivation
Currently, we don’t consume the response body of redirect responses. Because of this requests, that receive a redirect response with response body, may hang indefinitely.
Changes
Result
Redirect responses are consumed. Fixes #574