Commit graph

61 commits

Author SHA1 Message Date
eidheim
bdac513da0 Added SimpleWeb::asio namespace when using standalone asio as well 2017-07-05 12:57:45 +02:00
eidheim
e50d2fc63a Added .clang-format file and applied style to source files 2017-06-26 15:23:29 +02:00
eidheim
362c1a2591 Now closes unwanted client connections when a request is finished. Also added additional tests 2017-06-25 07:20:03 +02:00
eidheim
20d3c44366 *Fixes #135: memory leak that was introduces Jun 17, 2017 in e1aebba344 2017-06-24 13:19:53 +02:00
eidheim
c9c6ee3d98 Removed unnecessary includes 2017-06-24 10:46:42 +02:00
eidheim
8ec36d19fd Changed some parameters from std::iostream to std::istream in Client and Server 2017-06-23 07:00:16 +02:00
eidheim
361ac21518 Cleanup of synchronous Client::request functions 2017-06-22 22:32:51 +02:00
eidheim
6b7fd993cf Added convenience function Client::Response::Content::string() 2017-06-22 22:00:59 +02:00
eidheim
ba4eec7ebe Created Utility.hpp and moved some code into this file. Also improved parse_query_string. 2017-06-22 12:08:56 +02:00
eidheim
62da9daf87 Added Server::on_error and async client request examples 2017-06-20 14:36:05 +02:00
eidheim
52ff2787bd Removed use of boost::shared_mutex (in Client). Stopping request handlers, if needed, is now up to the user of the library. If io_service is running on multiple threads, a shared_mutex is needed, otherwise, regular mutex is adequate. 2017-06-19 06:52:30 +02:00
eidheim
fae8e07faa Removed dependency of boost::string_ref if USE_STANDALONE_ASIO is defined 2017-06-18 08:11:27 +02:00
eidheim
e1aebba344 Fixes #114: added support for async client requests. Also includes some cleanup, support for parallel requests, and client reconnect 2017-06-17 11:52:13 +02:00
eidheim
f5ba673350 Further cleanup of Client 2017-06-12 11:52:37 +02:00
eidheim
e2981c340b Cleanup of Client in preparation for async request 2017-06-12 10:53:22 +02:00
eidheim
2096017b24 Standalone asio correction in Client 2017-06-12 09:42:29 +02:00
eidheim
944c7fe370 Client::resolver is no longer a member variable 2017-06-12 08:32:27 +02:00
eidheim
a0cd7520ba Made Client::create_request_header const, and cleanup of indentations in Client 2017-06-12 08:22:40 +02:00
eidheim
5baffbc3f1 Cleanup of Client::request in preparation for async requests 2017-06-12 08:14:34 +02:00
eidheim
45f84489bc Client::io_service is now shared_ptr 2017-06-12 07:57:10 +02:00
eidheim
83691c6e9a Fixes #129: linking issues related to case_insensitive_equal and make_error_code 2017-06-10 15:03:27 +02:00
eidheim
111aeeb7fc Renamed case insensitive function and classes, and added test for case_insensitive_equal 2017-06-10 11:17:49 +02:00
eidheim
ec63c4345e Cleanup of #127: using standalone asio. 2017-06-07 19:27:34 +02:00
Sébastien Huss
d50bcabf8e added Support for NO_BOOST 2017-06-05 07:39:58 +02:00
eidheim
6192c131ef Fixed #112: Client now supports Connection: close responses without Content-Length and Transfer-Encoding. Also supports HTTP 1.0 responses that does not specify content length 2017-02-24 19:16:15 +01:00
eidheim
91d01fb8ec Fixes #101: added Config::timeout_connect 2017-01-21 10:22:27 +01:00
eidheim
549bc646bb Case insensitive header cleanup. Also cleanup and additions to parse_test 2016-12-31 10:34:03 +01:00
Ziyi Zhang
5cdf4aa540 Avoid compiling error in MSVC 2016-12-20 15:22:03 +11:00
eidheim
4606dbd855 Fixes Client<HTTPS> proxy requests. See #83 2016-12-16 11:11:58 +01:00
eidheim
dc7762e63b Fixes #91: added timeout on Client's async_connect 2016-12-11 10:53:33 +01:00
eidheim
ddb5622f76 Fixed request path when using proxy with HTTPS client 2016-11-26 10:33:11 +01:00
eidheim
599775c83f Made protocol() const, added default proxy ports, and added handshake on https proxy (based on #83) 2016-11-25 12:44:59 +01:00
eidheim
4141b76574 Cleanup of Client::connect methods 2016-11-24 18:05:19 +01:00
eidheim
f8cae4fde5 Corrected path when using proxy server in client 2016-11-24 17:55:09 +01:00
eidheim
9d9a8622d5 Added proxy server support to Client. Based on #83 2016-11-24 14:07:11 +01:00
Mathieu Schroeter
59bf48b37f Fixes #88: no longer tries to read and write 0 bytes in Client when reading chunked transfer encoding 2016-11-23 14:43:28 +01:00
Mathieu Schroeter
e7be91ef14 Fixes #87: now connects to socket when using second Client::request method 2016-11-23 13:43:00 +01:00
eidheim
76bf8942fd Made Client::close thread safe 2016-11-23 10:32:53 +01:00
eidheim
b1200958cc Added workaround for buggy MSVS 2016-11-23 09:24:41 +01:00
eidheim
56d36ddf92 Related to #86: added Client::close method 2016-11-23 09:13:55 +01:00
eidheim
8a73cb381a Fixes #86: can now set timeout on client requests 2016-11-23 07:01:48 +01:00
eidheim
2f32a2b52f Client now uses asynchronous asio read/write calls 2016-11-23 06:01:39 +01:00
eidheim
d94f6d6d27 Slight optimisation: less copies of shared_ptr objects 2016-10-19 09:16:02 +02:00
eidheim
1268c5b6de Changed private to protected in Server/Client<HTTP/HTTPS> classes, and some cleanup 2016-08-21 10:59:24 +02:00
eidheim
7ebf75817b Minor cleanup: removed a set_timeout_on_socket version that is no longer needed 2016-06-30 09:49:26 +02:00
eidheim
79dca558d2 Resolved most warning messages when compiled with -Wextra or -Weverything. Related to #44 and #45 2016-05-02 13:12:57 +02:00
eidheim
357e57f70c Added reference to case insensitive implementation of unordered_multimap 2016-02-24 09:17:09 +01:00
eidheim
3c4c378655 Fixes #35 for both client and server source 2016-02-24 09:13:23 +01:00
eidheim
3341badb41 Fixes #38 2016-02-23 20:24:39 +01:00
eidheim
ef7f4692a4 Fixes #33 2016-01-06 12:45:21 +01:00