cpp-httplib
cpp-httplib copied to clipboard
A C++ header-only HTTP/HTTPS server and client library
According to [rfc3986](https://datatracker.ietf.org/doc/html/rfc3986), only unreserved characters (`ALPHA / DIGIT / "-" / "." / "_" / "~" `) can remain unencoded. However, the function that encodes a query string [encode_query_param()](https://github.com/yhirose/cpp-httplib/blob/8f32271e8cd7fc294721e2166ab334d5b2c0c9b3/httplib.h#L2066)...
Redirected GET request like `https://sphinx.acast.com/p/acast/s/a-bientot-de-te-revoir/e/63a4721c69c77e001126ad39/media.mp3` are failing and while it looks like an agent setup problem it is actually the processing of the `Location` response header. httplib is percent-un-escaping every...
Thanks for this great library! 👍 Would it be possible to extend the API like `SSLClient::set_server_certificate_verification(std::function)` to allow verify certificate manually? just like [`asio::ssl::context::set_verify_callback`](https://www.boost.org/doc/libs/1_72_0/doc/html/boost_asio/reference/ssl__context/set_verify_callback/overload2.html). I think it would be very...
It would be good to annotate methods where we should not throw or do not call any throwing operations with `noexcept`. This helps ensure adherence to C++ guidelines, such as...
Is not possibile to access to the SSL error in Connect or in Accept, the error is local to template bool ssl_connect_or_accept_nonblocking. Solutions could be have a "last_res" in client/server...
capatables: this, sock, others variables is not neccessary.
is_socket_alive() is always return ture even though peer closed TLS and TCP connecton, I dont konwn how to detect whether TLS connection is alived.
Hi @yhirose ! Here is PR which fixes issue described in #1475 As you asked here is the copy of issue description: I am using server-sent events and faced infinite...
This pull request tries to fix #1478 with removing unnecessary `DataSink::is_writable()` method. This 'writable' check should be done in `DataSink::write()` with `strm.is_writable()`.
I use the library (as a client) against an API that makes use of [Trailing headers](https://developer.mozilla.org/fr/docs/Web/HTTP/Headers/Trailer) in some of its chunked responses. The current code does not handle that case...