surf icon indicating copy to clipboard operation
surf copied to clipboard

Fast and friendly HTTP client framework for async Rust

Results 102 surf issues
Sort by recently updated
recently updated
newest added

A helper method for convenience, just like `body_json`.

Hello! This might be outside of the scope of this project, and would possibly require significant effort but - is there currently a way to measure latency/time-to-first-byte using Surf? Ideally...

Currently there is no elegant way to seek through data stream, except using range headers manually. So I purpose adding `AsyncSeek`, that would provide seek method on body reader. The...

enhancement

This is an unfriendly choice for errors returned by a library because it makes them not work with `?`. ```rust async fn repro() -> Result { let _ = surf::get("https://www.rust-lang.org").await?;...

Taken from https://github.com/http-rs/surf/pull/252#issuecomment-707942927 `base_url` acts in unexpected ways when a trailing slash is missing. See that PR for more details.

bug

It seems ti be a little inconvenient to net set the content-length automatically

enhancement
good first issue

On some websites, e.g. http://bungalowspecials.nl, surf fails with the following error: > Head byte length should be less than 8kb Firefox, curl and ureq (a blocking Rust client) work fine....

On some websites, e.g. http://thomsonreuters.co.uk, surf fails with the following error: > Unsupported HTTP version Firefox, curl and ureq (a blocking Rust client) work fine. 11820 websites out of the...

enhancement

Some urls will return a content-length during head requests. Surf incorrectly assumes that this means there is a body present and will error: ``` thread 'main' panicked at 'Should Succeed!:...

bug

@ericsampson mentioned to me that a lot of http clients turn this on by default. Some ecosystem stats: - [Node.js does this by default on sockets](https://nodejs.org/dist/latest-v16.x/docs/api/net.html#net_socket_setnodelay_nodelay) - [Reqwest does this...

semver-major