Skip to content

Update Hyper Client to support handling expect: 100-continue header #3833

Open
@heiwais25

Description

@heiwais25

Is your feature request related to a problem? Please describe.

When I use Hyper Client based on the example (

hyper/examples/client.rs

Lines 49 to 54 in 3817a79

let (mut sender, conn) = hyper::client::conn::http1::handshake(io).await?;
tokio::task::spawn(async move {
if let Err(err) = conn.await {
println!("Connection failed: {:?}", err);
}
});
), it doesn't correctly handle the expect: 100-continue header in the request.

Describe the solution you'd like

Hyper Client needs to wait for the 100 continue response from the S3WSServer after sending the request header parts for certain time and then send the request body if it gets the response from the server or after certain time threshold.

This is to have the same functionality as https://developer.mozilla.org/en-US/docs/Web/HTTP/Status/100

Describe alternatives you've considered

Expose the client parts where it sends the request header and body, but it will be inefficient for the developers to implement the same functionality.

Additional context
Add any other context or screenshots about the feature request here.

Metadata

Metadata

Assignees

No one assigned

    Labels

    C-featureCategory: feature. This is adding a new feature.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions