1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-10-11 04:32:28 +00:00
Commit graph

874 commits

Author SHA1 Message Date
Nikolay Kim
cbf4c61eb5 add urlencoded body extractor 2018-04-02 14:00:18 -07:00
Nikolay Kim
280c8d87f8 expose ResourceType 2018-04-02 11:18:31 -07:00
Nikolay Kim
83bf852192 Fix logger request duration calculation 2018-04-02 11:09:24 -07:00
Nikolay Kim
6c906b08e1 match resource path before executing middlewares 2018-04-02 10:27:37 -07:00
Nikolay Kim
17c27ef42d HttpRequest::resource() returns current matched resource 2018-04-01 17:37:22 -07:00
Nikolay Kim
97e2bcd055 allow primitive types for Path extractor 2018-03-31 17:12:08 -07:00
Nikolay Kim
23cfa649f4 update tests 2018-03-31 10:21:54 -07:00
Nikolay Kim
8791c0f880 simplify With handlers 2018-03-31 09:58:33 -07:00
Nikolay Kim
16c212f853 add extractors info to guide 2018-03-31 09:18:25 -07:00
Nikolay Kim
3ee228005d rename Application 2018-03-31 00:16:55 -07:00
Nikolay Kim
44e3df82f6 simplify http response construction; deprecate httpcodes 2018-03-30 23:07:33 -07:00
Nikolay Kim
8d8f6bedad update examples 2018-03-30 18:54:38 -07:00
Nikolay Kim
9e751de707 re-arrange modules and exports 2018-03-30 17:31:18 -07:00
Nikolay Kim
b16419348e add from HttpRequest to a HttpRequestBuilder 2018-03-30 14:30:24 -07:00
Nikolay Kim
3ccaa04575 unhide AsyncResponder; remove unused code 2018-03-30 09:34:03 -07:00
Nikolay Kim
145010a2b0 use unreachable instead of panic 2018-03-29 15:55:27 -07:00
Nikolay Kim
3e98177fad added State extractor 2018-03-29 15:41:13 -07:00
Nikolay Kim
d24752d9bc update example in readme 2018-03-29 15:07:12 -07:00
Nikolay Kim
92fe2e96de update doc strings 2018-03-29 15:00:18 -07:00
Nikolay Kim
3cf54bc0fd proper serde deserializer implementation for path 2018-03-29 14:30:45 -07:00
Nikolay Kim
86dd732704 use FromRequest instead of HttpRequestExtractor 2018-03-29 13:12:28 -07:00
Nikolay Kim
dfd8f1058e move NormalizePath type to separate module 2018-03-29 11:39:21 -07:00
Nikolay Kim
f5636f321b drop deprecated code 2018-03-29 11:06:44 -07:00
Nikolay Kim
ae6c9cb7fa re-arrange exports, some doc string updates 2018-03-29 10:44:26 -07:00
Nikolay Kim
32052c2750 update guide 2018-03-29 10:01:07 -07:00
Nikolay Kim
7d6deab9fb drop request's extract_xxx methods 2018-03-29 09:26:01 -07:00
Nikolay Kim
9e61c67128 do not re-export Version 2018-03-28 22:00:36 -07:00
Nikolay Kim
13bb5f20d2 fix export name 2018-03-28 21:58:08 -07:00
Nikolay Kim
d14991ec96 update doc strings 2018-03-28 21:49:50 -07:00
Nikolay Kim
45dec8d0c0 optimize with and with2 method impls and tests 2018-03-28 21:33:40 -07:00
Nikolay Kim
90e3aaaf8a fix router cannot parse Non-ASCII characters in URL #137 2018-03-28 16:10:58 -07:00
Nikolay Kim
4f7d45ee9c remove unneeded import 2018-03-28 14:38:01 -07:00
Nikolay Kim
e1d2536d85 remove unused code 2018-03-28 14:34:17 -07:00
Nikolay Kim
65700281e8 add support for multiple extractors 2018-03-28 14:24:32 -07:00
Nikolay Kim
df7ffe14f2 add PathAndQuery extractor 2018-03-28 11:20:06 -07:00
Nikolay Kim
36161aba99 update Path and Query doc strings 2018-03-28 07:27:06 -07:00
Nikolay Kim
9f5a91ae3c export types 2018-03-27 21:59:55 -07:00
Nikolay Kim
4358da9926 refactor WithHandler trait 2018-03-27 20:33:24 -07:00
Nikolay Kim
62fb75ff95 add Application::configure method, it simplifies configuration process 2018-03-27 11:16:02 -07:00
Nikolay Kim
dcc5eb7ace pass request as value 2018-03-26 23:34:31 -07:00
Nikolay Kim
81f4e12a27 fix doc string test 2018-03-26 23:29:53 -07:00
Nikolay Kim
2f60a4b89d add handler with exatractor 2018-03-26 23:10:31 -07:00
Nikolay Kim
8fff2c7595 remove Path and Query from public api 2018-03-26 18:18:38 -07:00
Nikolay Kim
052d5f0bc5 silence AsciiExt deprecation warn 2018-03-26 16:12:25 -07:00
Nikolay Kim
68cf32e848 add path and query extractors 2018-03-26 15:58:30 -07:00
Nikolay Kim
a56e5113ee process transfer-encoding before content-length, fix tests on 32bit platform 2018-03-24 09:22:34 -07:00
Alexander Andreev
2d80c5053d spelling check 2018-03-24 09:35:52 +03:00
Nikolay Kim
47f836cd1b add helper method for response creation 2018-03-22 21:14:57 -07:00
Nikolay Kim
449709dd7e add 0.5 sec deley before exit 2018-03-22 18:41:02 -07:00
Nikolay Kim
5a25fd95f5 Fix panic on invalid URL characters #130 2018-03-22 18:08:12 -07:00
Nikolay Kim
b942bcc4a6 Fix long client urls #129 2018-03-22 07:44:16 -07:00
Nikolay Kim
93d99b5a49 Use more ergonomic actix_web::Error instead of http::Error for ClientRequestBuilder::body() 2018-03-21 20:19:31 -07:00
Nikolay Kim
e49910cdab Use more ergonomic actix_web::Error instead of http::Error for HttpResponseBuilder::body() 2018-03-21 20:15:52 -07:00
Nikolay Kim
e8a1850c79 add helper conversion from ClientResponse for HttpResponseBuilder 2018-03-21 20:04:35 -07:00
Nikolay Kim
afb81b6b8f add convinience ClientRequest::build_from() from HttpRequest 2018-03-21 19:54:21 -07:00
Nikolay Kim
4866a26578 make streaming method more ergonomic 2018-03-21 19:14:18 -07:00
Nikolay Kim
2d75ced4ed fix client connection pooling 2018-03-21 11:51:08 -07:00
Nikolay Kim
7bcc258b09
Use fast compression setting 2018-03-21 08:56:21 -07:00
Nikolay Kim
d5fa0a9418 disable brotli if feature is not enabled, faster compression 2018-03-21 08:03:21 -07:00
Nikolay Kim
ce6d237cc1 prepare 0.4.10 release 2018-03-20 15:53:39 -07:00
Nikolay Kim
70caa2552b simplify httpresponse release 2018-03-20 15:51:19 -07:00
Nikolay Kim
c4f4cadb43 Fix http/2 date header generation 2018-03-20 11:40:05 -07:00
Nikolay Kim
978091cedb wake up io task when next chunk of data is needed 2018-03-20 11:37:13 -07:00
Nikolay Kim
8198f5e10a Refactor TestServer configuration 2018-03-20 11:23:35 -07:00
Nikolay Kim
6cd40df387 Fix server websockets big payloads support 2018-03-19 17:27:03 -07:00
Nikolay Kim
35ee5d36d8 actix 0.5.5, ws test 2018-03-19 13:12:36 -07:00
Nikolay Kim
e7ec0f9fd7 ws tests and proper write payload ref 2018-03-19 09:30:58 -07:00
Nikolay Kim
f4a47ef71e allow set client request/ws timeout 2018-03-18 19:27:51 -07:00
Nikolay Kim
ab73da4a1a use Error instead of InternalError for helper methods error::ErrorXXX 2018-03-18 14:18:47 -07:00
Nikolay Kim
e0c8da567c various optimizations 2018-03-18 11:05:44 -07:00
Douman
ec192e0ab1 Show Request's hidden methods 2018-03-17 18:10:22 +03:00
Nikolay Kim
6d792d9948 simplify h1 parse 2018-03-16 20:56:23 -07:00
Nikolay Kim
1fe4315c94 use actix 0.5.4 2018-03-16 13:37:47 -07:00
Nikolay Kim
2d18dba40a fix compilation 2018-03-16 12:28:08 -07:00
Nikolay Kim
d2693d58a8 clippy warnings 2018-03-16 12:12:55 -07:00
Nikolay Kim
84bf282c17 add basic client connection pooling 2018-03-16 12:04:01 -07:00
Nikolay Kim
b15b5e5246 check number of available workers 2018-03-16 11:17:27 -07:00
Nikolay Kim
64c4cefa8f
Merge branch 'master' into default_static_files 2018-03-16 09:31:36 -07:00
Douman
8a344d0c94 Add default resource for StaticFiles 2018-03-16 19:04:36 +03:00
Nikolay Kim
4096089a3f allow to disable http/2 support 2018-03-16 08:48:44 -07:00
Nikolay Kim
b16f2d5f05 proper check for actor context poll 2018-03-16 08:04:26 -07:00
Nikolay Kim
5baf15822a always start actors 2018-03-16 07:46:27 -07:00
Nikolay Kim
61970ab190 always poll stream or actor for the first time 2018-03-15 17:11:49 -07:00
Nikolay Kim
73bf2068aa allow to use NamedFile with any request method 2018-03-15 16:55:22 -07:00
Nikolay Kim
0f064db31d Move brotli encoding to a feature 2018-03-13 17:21:22 -07:00
Nikolay Kim
fd0bb54469 add debug formatter for ClientRequestBuilder 2018-03-13 15:09:05 -07:00
Glade Miller
38080f67b3 If no path is available from the URI request / 2018-03-13 13:35:11 -06:00
Glade Miller
08504e0892 Move path call inline into write 2018-03-13 13:26:13 -06:00
Glade Miller
401c0ad809 https://github.com/actix/actix-web/issues/120 - Send Query Parameters in client requests 2018-03-13 13:17:55 -06:00
Nikolay Kim
b4b0deb7fa Wake payload reading task when data is available 2018-03-12 16:29:13 -07:00
Nikolay Kim
05ff35d383 Fix server keep-alive handling 2018-03-12 16:16:17 -07:00
Nikolay Kim
29c3e8f7ea update test 2018-03-12 10:19:09 -07:00
Nikolay Kim
6657446433 Allow to set read buffer capacity for server request 2018-03-12 10:01:56 -07:00
Nikolay Kim
b3cdb472d0 remove reserved state for h2 write if buffer is empty 2018-03-12 09:04:54 -07:00
Nikolay Kim
31e1aab9a4 do not log WouldBlock error from socket accept 2018-03-12 09:02:15 -07:00
Nikolay Kim
49f5c335f6 better sleep on error 2018-03-11 16:52:20 -07:00
Nikolay Kim
3e276ac921
Merge branch 'master' into feature/sockets-vec 2018-03-11 16:38:17 -07:00
Nikolay Kim
4af115a19c Fix steraming response handling for http/2 2018-03-11 16:37:44 -07:00
Nikolay Kim
051703eb2c Fix connection get closed too early 2018-03-11 15:37:33 -07:00
Nikolay Kim
31fbbd3168 Fix panic on unknown content encoding 2018-03-11 14:50:13 -07:00
Nikolay Kim
a4c933e56e update doc string 2018-03-11 09:36:54 -07:00
Nikolay Kim
9ddf5a3550 better doc string for Either 2018-03-11 09:28:22 -07:00
messense
9ab0fa604d
Use Vec instead of HashMap to store sockets in HttpServer 2018-03-11 17:29:44 +08:00
Nikolay Kim
6c709b33cc return error on write zero bytes 2018-03-10 10:42:46 -08:00
Nikolay Kim
71b4c07ea4 Fix json content type detection 2018-03-10 10:27:29 -08:00
Nikolay Kim
ac9eba8261 add api doc for Either 2018-03-10 10:12:44 -08:00
Nikolay Kim
cad55f9c80 add Either responder 2018-03-10 09:39:43 -08:00
Nikolay Kim
4263574a58 fix panic in cors if request does not contain origin header and send_wildcard is not set 2018-03-10 08:31:20 -08:00
messense
9a404a0c03
Impl From<usize> and From<Option<usize>> for KeepAlive 2018-03-10 17:52:50 +08:00
Nikolay Kim
05f5ba0084 refactor keep-alive; fixed write to socket for upgraded connection 2018-03-09 16:21:14 -08:00
Nikolay Kim
8d1de6c497 ws client timeouts 2018-03-09 13:12:14 -08:00
Nikolay Kim
caaace82e3 export symbols 2018-03-09 13:03:15 -08:00
Nikolay Kim
02dd5375a9 aling mask to 8 bytes 2018-03-09 10:25:47 -08:00
Nikolay Kim
717602472a clippy warnings 2018-03-09 10:11:38 -08:00
Nikolay Kim
b56be8e571 write buffer capacity for client 2018-03-09 10:09:13 -08:00
Nikolay Kim
2853086463 add write buffer capacity config 2018-03-09 10:00:15 -08:00
Nikolay Kim
e2107ec6f4 use small vec on hot path 2018-03-09 08:00:44 -08:00
Nikolay Kim
c33caddf57 update tests 2018-03-09 05:50:47 -08:00
Nikolay Kim
f8b8fe3865 add space to cookie header 2018-03-09 05:38:07 -08:00
Nikolay Kim
1c6ddfd34c naming 2018-03-09 05:36:40 -08:00
Nikolay Kim
49e007ff2a move protobuf support to the example 2018-03-09 05:29:06 -08:00
Nikolay Kim
f3c63e631a add protobuf feature 2018-03-08 20:56:18 -08:00
Nikolay Kim
3f0803a7d3 Merge branch 'master' of github.com:actix/actix-web 2018-03-08 20:39:10 -08:00
Nikolay Kim
f12b613211 more ws optimizations 2018-03-08 20:39:05 -08:00
kingxsp
63634be542
Merge branch 'master' into master 2018-03-09 10:22:15 +08:00
Nikolay Kim
f88f1c65b6 update tests 2018-03-08 18:19:46 -08:00
kingxsp
a0b589eb96 Add protobuf support 2018-03-09 10:05:13 +08:00
Nikolay Kim
ebdc983dfe optimize websocket stream 2018-03-08 17:19:50 -08:00
Nikolay Kim
395243a539 another attempt to fix cookie handling 2018-03-08 11:16:54 -08:00
Nikolay Kim
1ab676d7eb bump version and add some tests 2018-03-07 22:40:46 -08:00
Nikolay Kim
47f01e5b7e update doc string 2018-03-07 21:39:20 -08:00
Nikolay Kim
ffb89935b6 update all features 2018-03-07 21:37:42 -08:00
Nikolay Kim
6c0fb3a7d2 handle panics in worker threads 2018-03-07 21:10:53 -08:00
Nikolay Kim
824244622f update test 2018-03-07 17:42:57 -08:00
Nikolay Kim
42d2a29b1d non-blocking processing for NamedFile 2018-03-07 17:40:13 -08:00
Nikolay Kim
af8875f6ab sleep on accept socket error 2018-03-07 15:52:05 -08:00
Nikolay Kim
1db1ce1ca3 one more cookie handling fix 2018-03-07 15:41:46 -08:00
Nikolay Kim
f55ef3a059 create default CpuPool 2018-03-07 14:56:53 -08:00
Nikolay Kim
67bf0ae79f fix HttpServer::listen method 2018-03-07 14:46:12 -08:00
Thedancingbard
7cce29b633 BoyScoutRule: Fixed typo 2018-03-07 21:54:25 +01:00
Nikolay Kim
c26d9545a5 map connector timeout error 2018-03-07 12:09:53 -08:00
Nikolay Kim
0bf29a522b Allow to use std::net::TcpListener for HttpServer 2018-03-07 11:28:44 -08:00
Nikolay Kim
24342fb745
Merge pull request #113 from niklasf/csrf-upgrade
Let CSRF filter catch cross-site upgrades
2018-03-07 09:58:30 -08:00
Niklas Fiekas
0278e364ec add tests for csrf upgrade filter 2018-03-07 18:42:21 +01:00
Niklas Fiekas
b9d6bbd357 filter cross-site upgrades in csrf middleware 2018-03-07 17:49:30 +01:00
Niklas Fiekas
5816ecd1bc fix variable name: cors -> csrf 2018-03-07 17:44:19 +01:00
Nikolay Kim
9e0e081c90
Merge branch 'master' into cookie-handling 2018-03-07 06:12:37 -08:00
Alex Whitney
9afad5885b fix client cookie handling 2018-03-07 09:48:34 +00:00
kindiana
04d0abb3c7 make session an optional feature 2018-03-07 15:38:58 +08:00
Nikolay Kim
c1419413aa Fix client cookie support 2018-03-06 22:36:34 -08:00
Nikolay Kim
acd33cccbb add tls 2018-03-06 17:34:46 -08:00
Nikolay Kim
57a1d68f89 add client response timeout 2018-03-06 17:04:48 -08:00
Nikolay Kim
6a3c5c4ce0
Merge branch 'master' into feature/allow_connection_timeout_to_be_set 2018-03-06 15:18:25 -08:00
Nikolay Kim
14a511bdad use IntoHeaderValue and Header for client request 2018-03-06 15:18:04 -08:00
Glade Miller
6b9e51740b
Merge branch 'master' into feature/allow_connection_timeout_to_be_set 2018-03-06 15:28:31 -07:00
Glade Miller
be7e8d159b Allow connection timeout to be set 2018-03-06 15:26:09 -07:00
Niklas Fiekas
85b650048d give a url in the log when starting 2018-03-06 20:37:18 +01:00
Nikolay Kim
a0e6313d56 Fix compression #103 and #104 2018-03-06 11:02:03 -08:00
Nikolay Kim
526753ee88 update tests for stable compiler 2018-03-06 07:56:43 -08:00
Nikolay Kim
32b5544ad9 port hyper header 2018-03-06 00:43:25 -08:00
Nikolay Kim
e182ed33b1 add Header trait 2018-03-05 19:28:42 -08:00
Nikolay Kim
0c30057c8c move headers to separate module; allow custom HeaderValue conversion 2018-03-05 16:45:54 -08:00
Nikolay Kim
05e49e893e allow only GET and HEAD for NamedFile 2018-03-05 14:04:30 -08:00
Nikolay Kim
c8844425ad Enable compression support for NamedFile 2018-03-05 13:31:30 -08:00
Nikolay Kim
b282ec106e Add ResponseError impl for SendRequestError 2018-03-05 13:02:31 -08:00
Nikolay Kim
cbb821148b explicitly set tcp nodelay 2018-03-04 20:14:58 -08:00
Nikolay Kim
11347e3c7d Allow to use Arc<Vec<u8>> as response/request body 2018-03-04 10:33:18 -08:00
Nikolay Kim
631fe72a46 websockets text() is more generic 2018-03-04 10:18:42 -08:00
Nikolay Kim
f673dba759 Fix handling of requests with an encoded body with a length > 8192 #93 2018-03-04 09:48:34 -08:00
Nikolay Kim
2ccbd5fa18 fix socket polling 2018-03-03 12:17:26 -08:00
Nikolay Kim
058630d041 simplify channels list management 2018-03-03 11:16:55 -08:00
Nikolay Kim
f456be0309 simplify linked nodes 2018-03-03 10:06:13 -08:00
Nikolay Kim
9bd6cb03ac Merge branch 'master' of github.com:actix/actix-web 2018-03-03 09:29:46 -08:00
Nikolay Kim
83fcdfd91f fix potential bug in payload processing 2018-03-03 09:27:54 -08:00
Anti Revoluzzer
4e41347de8 move reuse_address before bind 2018-03-02 22:57:11 -08:00
Nikolay Kim
791a980e2d update tests 2018-03-02 22:08:56 -08:00
Nikolay Kim
c2d8abcee7 Fix disconnect on idle connections 2018-03-02 20:47:23 -08:00
Nikolay Kim
16c05f07ba make HttpRequest::match_info_mut() public 2018-03-02 20:40:08 -08:00
Nikolay Kim
2158ad29ee add Pattern::with_prefix, make it usable outside of actix 2018-03-02 20:39:22 -08:00
Nikolay Kim
feba5aeffd bump version 2018-03-02 14:31:23 -08:00
Nikolay Kim
e60acb7607
Merge branch 'master' into csrf-middleware 2018-03-02 12:25:05 -08:00
Nikolay Kim
3b2928a391 Better naming for websockets implementation 2018-03-02 11:29:55 -08:00
Niklas Fiekas
10f57dac31 add csrf filter middleware 2018-03-02 20:13:43 +01:00
Nikolay Kim
b640b49b05 adjust low buf size 2018-03-01 20:13:50 -08:00
Nikolay Kim
1fea4bd9a6 prepare release 2018-03-01 20:01:25 -08:00
Nikolay Kim
206c4e581a rename httpcodes 2018-03-01 19:12:59 -08:00
Nikolay Kim
4e13505b92 rename .p to a .filter 2018-03-01 18:42:50 -08:00
Nikolay Kim
5b6d7cddbf Fix payload parse in situation when socket data is not ready 2018-03-01 18:27:04 -08:00
Nikolay Kim
4aaf9f08f8 update readme 2018-02-28 22:31:54 -08:00
Nikolay Kim
d62d6e68e0 use new version of http crate 2018-02-28 14:16:55 -08:00
Alex Whitney
313396d9b5 fix session mut borrow lifetime 2018-02-28 19:35:26 +00:00
Nikolay Kim
171a23561e export Drain 2018-02-28 11:10:54 -08:00
Nikolay Kim
8994732227 doc strings 2018-02-27 23:30:26 -08:00
Nikolay Kim
7591592279 fix handle big data chunkd for parsing 2018-02-27 23:04:57 -08:00
Nikolay Kim
1e2aa4fc90 mark context as modified after writing data 2018-02-27 18:05:06 -08:00
Nikolay Kim
e2c8f17c2c drop connection if handler get dropped without consuming payload 2018-02-27 16:08:57 -08:00
Nikolay Kim
4f99cd1580 add ws error tracing 2018-02-27 15:38:57 -08:00
Nikolay Kim
1f063e4136 move with_connector method to ClientRequestBuilder 2018-02-27 15:14:33 -08:00
Nikolay Kim
a7bf635158 unify headers and body processing for client response and server request 2018-02-27 15:03:28 -08:00
Nikolay Kim
aac9b5a97c update readme 2018-02-27 12:49:11 -08:00