1
0
Fork 0
mirror of https://github.com/actix/actix-web.git synced 2024-11-23 01:51:11 +00:00
Commit graph

332 commits

Author SHA1 Message Date
Douman
7d753eeb8c
Private serde fork (#390)
* Fork serde_urlencoded

* Apply enum PR https://github.com/nox/serde_urlencoded/pull/30

* Add test to verify enum in query

* Docs are updated to show example of how to use enum.
2018-07-13 09:59:09 +03:00
Nikolay Kim
a5f7a67b4d clippy warnings 2018-07-06 08:24:44 +06:00
Nikolay Kim
185e710dc8 do not drop content-encoding header in case of identity #363 2018-07-06 08:24:36 +06:00
Nikolay Kim
9070d59ea8 do not read head payload 2018-07-06 08:11:36 +06:00
Douman
67e4cad281
Introduce method to set header if it is missing only (#364)
Also let default headers use it.

Closes #320
2018-07-05 19:27:18 +03:00
Nikolay Kim
80339147b9 call disconnect on write error 2018-07-05 12:50:54 +06:00
Nikolay Kim
fec6047ddc refactor HttpRequest mutability 2018-07-02 23:35:32 +06:00
Nikolay Kim
c0cdc39ba9 do not store cookies on client response 2018-06-24 22:21:04 +06:00
Nikolay Kim
65ca563579 use read only self for Middleware 2018-06-21 23:06:23 +06:00
Nikolay Kim
58d1f4a4aa switch to actix master 2018-06-21 13:34:36 +06:00
Nikolay Kim
b7d813eeba update tests 2018-06-21 12:04:00 +06:00
Nikolay Kim
ebc59cf7b9 add unsafe checks #331 2018-06-21 11:20:21 +06:00
Nikolay Kim
247e8727cb ClientBody is not needed 2018-06-19 10:15:16 +06:00
Nikolay Kim
8261cf437d update actix api 2018-06-13 23:37:19 -07:00
Dursun Akkurt
0a080d9fb4 add test for form extractor 2018-06-13 01:33:28 +03:00
Dursun Akkurt
ed7cbaa772 fix form_extractor test 2018-06-12 23:04:54 +03:00
Dursun Akkurt
e6bbda0efc add serialize 2018-06-12 22:42:15 +03:00
Dursun Akkurt
94283a73c2 make into_string, to_string 2018-06-12 22:31:33 +03:00
Dursun Akkurt
ffca416463 add test for ClientRequestBuilder::form() 2018-06-12 22:16:20 +03:00
Nikolay Kim
818d0bc187 new StreamHandler impl 2018-06-09 07:53:46 -07:00
Nikolay Kim
5004821cda
Merge branch 'master' into user-agent 2018-06-04 14:04:45 -07:00
Nikolay Kim
984791187a Middleware::response is not invoked if error result was returned by another Middleware::start #255 2018-06-04 13:42:47 -07:00
François Mockers
ca3fb11f8b add actix-web version in header 2018-06-04 08:15:04 +02:00
François Mockers
86be54df71 add default value for header User-Agent in requests 2018-06-03 15:48:00 +02:00
Josh Leeb-du Toit
9c9eb62031 Update Middleware trait to use &mut self 2018-06-02 16:47:18 +10:00
Nikolay Kim
8f42fec9b2 stable compat 2018-06-01 12:17:13 -07:00
Nikolay Kim
3e0a71101c drop with2 and with3 2018-06-01 10:54:23 -07:00
Nikolay Kim
a64205e502 refactor TransferEncoding; allow to use client api with threaded tokio runtime 2018-05-29 16:32:39 -07:00
Nikolay Kim
844be8d9dd fix ssl test server 2018-05-29 10:59:24 -07:00
Nikolay Kim
ecd05662c0 use new actix system api 2018-05-29 10:31:37 -07:00
Nikolay Kim
690169db89 migrate to tokio 2018-05-24 21:03:16 -07:00
Nikolay Kim
68eb2f26c9 Allow to use path without traling slashes for scope registration #241 2018-05-23 13:21:29 -07:00
Nikolay Kim
db0091ba6f disable server test for windows 2018-05-21 21:01:52 -07:00
Nikolay Kim
577a509875 increase delay 2018-05-21 16:12:33 -07:00
Nikolay Kim
14d1b8e2b6 prepare release 2018-05-20 21:09:54 -07:00
Nikolay Kim
082ff46041 Fix scope resource path extractor #234 2018-05-20 17:04:23 -07:00
Nikolay Kim
45e9aaa462 rustfmt 0.7 2018-05-17 12:20:20 -07:00
Nikolay Kim
b393ddf879 fix panic during middleware execution #226 2018-05-16 11:00:29 -07:00
Nikolay Kim
18575ee1ee Add Router::with_async() method for async handler registration 2018-05-09 16:27:31 -07:00
Nikolay Kim
47d80382b2 Fix http/2 payload streaming #215 2018-05-08 15:44:50 -07:00
Nikolay Kim
a817ddb57b add variable segments support for scope prefix 2018-05-07 13:50:43 -07:00
Nikolay Kim
fa81d97004 more handler tests 2018-05-06 20:05:31 -07:00
Nikolay Kim
c54f045b39 more handler tests 2018-05-06 15:11:36 -07:00
Nikolay Kim
45325a5f75 more middleware tests 2018-05-06 08:33:41 -07:00
Nikolay Kim
a7c40024ce async handle middleware test 2018-05-05 18:40:16 -07:00
Nikolay Kim
0af4d01fe4 move middleware tests to seprate module 2018-05-05 12:18:43 -07:00
Nikolay Kim
48e05a2d87 add nested scope support 2018-04-30 22:04:24 -07:00
Nikolay Kim
c72d1381a6 clippy warnings 2018-04-29 09:09:08 -07:00
Sven-Hendrik Haase
de222fe33b Merge and fix PR comments 2018-04-29 14:02:50 +02:00
Nikolay Kim
de49796fd1 clippy warnings; fmt 2018-04-28 22:55:47 -07:00
Nathan Fox
b7b61afacc add ws close description parse test 2018-04-21 17:20:23 -04:00
Nathan Fox
de8a09254d use Optional with websocket close reason 2018-04-21 16:50:27 -04:00
Nathan Fox
dc9a24a189 add websocket empty close status test 2018-04-20 21:55:07 -04:00
Nikolay Kim
48b02abee7 fmt 2018-04-18 20:16:29 -07:00
Nikolay Kim
f907be585e Middleware response() is not invoked if there was an error in async handler #187 2018-04-18 14:15:53 -07:00
Nikolay Kim
a826d113ee add custom request path quoter #182 2018-04-17 12:55:13 -07:00
Nikolay Kim
827ca5eada remove skeptic tests 2018-04-13 16:36:39 -07:00
Nikolay Kim
113f5ad1a8 add rustfmt config 2018-04-13 16:02:01 -07:00
Nikolay Kim
a4b837a1c1 flaky test 2018-04-06 19:45:14 -07:00
Nikolay Kim
691457fbfe update tests 2018-04-06 09:45:10 -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
9e751de707 re-arrange modules and exports 2018-03-30 17:31:18 -07:00
Nikolay Kim
f5636f321b drop deprecated code 2018-03-29 11:06:44 -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
65700281e8 add support for multiple extractors 2018-03-28 14:24:32 -07:00
Nikolay Kim
d5fa0a9418 disable brotli if feature is not enabled, faster compression 2018-03-21 08:03:21 -07:00
Nikolay Kim
ee7d58dd7f disable h2 2018-03-20 12:35:44 -07:00
Nikolay Kim
c4f4cadb43 Fix http/2 date header generation 2018-03-20 11:40:05 -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
7e8b231f57 disable test 2018-03-16 09:13:36 -07:00
Nikolay Kim
4096089a3f allow to disable http/2 support 2018-03-16 08:48:44 -07:00
François Mockers
ad6b823255 test for query parameters in client 2018-03-14 21:45:49 +01:00
Nikolay Kim
6c0fb3a7d2 handle panics in worker threads 2018-03-07 21:10:53 -08:00
Nikolay Kim
1db1ce1ca3 one more cookie handling fix 2018-03-07 15:41:46 -08:00
Alex Whitney
6cc3aaef1b add client cookie handling test 2018-03-07 11:43:55 +00:00
Nikolay Kim
a0e6313d56 Fix compression #103 and #104 2018-03-06 11:02:03 -08:00
François Mockers
779e773185 add tests with large random bodies for gzip 2018-03-06 14:26:48 +01:00
messense
0adb7e8553
Use str::repeat 2018-03-05 09:54:58 +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
ab978a18ff unix only test 2018-03-03 18:50:00 -08:00
Nikolay Kim
bebfc6c9b5 sleep for test 2018-03-02 11:32:37 -08:00
Nikolay Kim
3b2928a391 Better naming for websockets implementation 2018-03-02 11:29:55 -08:00
Nikolay Kim
7591592279 fix handle big data chunkd for parsing 2018-02-27 23:04:57 -08:00
Nikolay Kim
4a48b43927 big value 2018-02-27 21:49:08 -08:00
Nikolay Kim
ccb6ebb259 headers test 2018-02-27 20:49:53 -08:00
Nikolay Kim
da76de76f0 upgrade sha crate 2018-02-27 20:32:51 -08:00
Nikolay Kim
c316a99746 stop server test 2018-02-27 20:04:01 -08:00
Nikolay Kim
5dcb558f50 refactor websockets handling 2018-02-27 10:09:24 -08:00
Nikolay Kim
644f1a9518 refactor ws frame parser 2018-02-26 13:58:23 -08:00
Nikolay Kim
4e41e13baf refactor client payload processing 2018-02-25 11:18:17 +03:00
Nikolay Kim
4a9c1ae894 allow to use Connection for sending client request 2018-02-21 22:53:23 -08:00
Nikolay Kim
03912d2089 support client request's async body 2018-02-19 22:48:27 -08:00
Nikolay Kim
548f4e4d62 replace reqwest with actix::client 2018-02-19 13:18:18 -08:00
Nikolay Kim
b1eec3131f use newer api 2018-02-12 22:56:47 -08:00
Nikolay Kim
335ca8ff33 use new actix api 2018-02-12 16:08:04 -08:00
Nikolay Kim
0c98775b51 refactor h1 stream polling 2018-02-09 22:26:48 -08:00
Nikolay Kim
5a5497b745 add close ws test 2018-01-30 16:04:04 -08:00
Nikolay Kim
577f91206c added support for websocket testing 2018-01-30 15:13:33 -08:00
Nikolay Kim
91c44a1cf1 Fix HEAD requests handling 2018-01-20 16:12:38 -08:00
Nikolay Kim
8a058efb4e move server protocol impl to submodule 2018-01-11 18:35:05 -08:00
Nikolay Kim
0707dfe5bb flush stream on drain 2018-01-11 16:22:27 -08:00
Nikolay Kim
0a41ecd01d disable test 2018-01-11 15:38:57 -08:00
Nikolay Kim
0648ad6f33 fix implicit chunked encoding 2018-01-11 15:26:46 -08:00
Nikolay Kim
43f14224b1 properly enable encoding tests 2018-01-10 22:42:26 -08:00
Nikolay Kim
448b73a4b5 encoding tests 2018-01-10 21:47:30 -08:00
Nikolay Kim
ce78f17a79 refactor Middleware trait, use Result 2018-01-09 22:48:35 -08:00
Nikolay Kim
e8412672a2 add resource level middlewares support 2018-01-09 20:00:18 -08:00
Nikolay Kim
6c7dda495b add very simple http/2 test 2018-01-09 12:49:46 -08:00
Nikolay Kim
6a2bb9a473 split worker code to separate module 2017-12-28 12:38:37 -08:00
Nikolay Kim
02b37570f4 flaky test 2017-12-28 09:11:25 -08:00
Nikolay Kim
0589f2ee49 add server management commands 2017-12-27 12:58:32 -08:00
Nikolay Kim
da8aa8b988 use mio for accept loop 2017-12-27 11:22:27 -08:00
Nikolay Kim
3abd0db6b1 restore server start test 2017-12-26 20:07:31 -08:00
Nikolay Kim
29adc20581 rename module 2017-12-26 19:59:41 -08:00
Nikolay Kim
d3b7d2d6b3 allow to use application factory for test server 2017-12-26 16:47:55 -08:00
Nikolay Kim
f6510161b5 add simple TestServer for integrational tests cases 2017-12-26 16:35:00 -08:00
Nikolay Kim
13cbfc877d simplify server start method 2017-12-19 09:08:36 -08:00
Nikolay Kim
26af6040ff update tests 2017-12-18 13:26:43 -08:00
Nikolay Kim
27d92f3a23 refactor server bind and start process 2017-12-17 12:35:04 -08:00
Nikolay Kim
a8b2f1b821 update tests 2017-12-15 18:49:11 -08:00
Nikolay Kim
6b61041aec move tests 2017-12-13 11:16:26 -08:00
Nikolay Kim
d4187f682b various cleanups 2017-12-13 11:10:03 -08:00
Nikolay Kim
55204c829c update tests 2017-12-13 08:00:25 -08:00
Nikolay Kim
ab6efd2421 handle http connections in different threads 2017-12-12 17:21:00 -08:00
Nikolay Kim
e9aa67b75d http server accepts factory of HttpHandlers 2017-12-12 07:40:36 -08:00
Nikolay Kim
0f75d066f2 simplify Application creation; update url dispatch guide section 2017-12-11 14:16:29 -08:00
Nikolay Kim
b98ab2eebe use trait instead of pipeline 2017-12-09 04:33:40 -08:00
Nikolay Kim
b71ddf7b4c pass local addr to channel; use bitflags 2017-12-07 21:52:46 -08:00
Nikolay Kim
d595dd850e load cookies automatically 2017-12-07 18:00:20 -08:00
Nikolay Kim
dff7618f35 rearrange exports 2017-12-07 16:40:29 -08:00
Nikolay Kim
968f5d39d6 added external resources; refactor route recognizer 2017-12-07 16:22:26 -08:00
Nikolay Kim
0dd27bd224 added HttpRequest::url_for 2017-12-06 16:26:27 -08:00
Nikolay Kim
c63f058647 simplify application creation 2017-12-06 11:00:39 -08:00
Nikolay Kim
86d7290f9e update tests 2017-12-05 11:43:41 -08:00
Nikolay Kim
f5d6179a34 renamed Route::handler to Route::f, added Route::h to register Handler 2017-12-04 14:07:53 -08:00
Nikolay Kim
3bf3738e65 introduce route predicates 2017-12-04 13:32:05 -08:00
Nikolay Kim
3fcd5f6935 use http::Uri for uri parsing 2017-11-30 19:01:25 -08:00
Nikolay Kim
afeecea05f refactor reply handling 2017-11-28 19:49:17 -08:00
Nikolay Kim
b55d69b4c2 better handler result handling 2017-11-28 12:42:53 -08:00
Nikolay Kim
42716d3252 update tests 2017-11-26 22:59:04 -08:00
Nikolay Kim
0519056199 consistent naming 2017-11-26 22:31:29 -08:00
Nikolay Kim
fdafb0c848 simplify middleware api; fix examples 2017-11-26 21:47:33 -08:00
Nikolay Kim
5a3b6638a7 move state to request object 2017-11-26 21:18:38 -08:00
Nikolay Kim
eb7f48a1c6 include payload into request 2017-11-26 19:00:57 -08:00
Nikolay Kim
45ecb87eab allow middlware error result 2017-11-25 10:24:45 -08:00
Nikolay Kim
7569036dd4 refactor request pipeline 2017-11-24 22:15:52 -08:00
Nikolay Kim
40c1d3b711 refactor middlewares 2017-11-09 22:08:54 -08:00
Nikolay Kim
e558414867 add response content encoding 2017-11-08 16:44:46 -08:00
Nikolay Kim
4e216701c0 better handler function ergonimics 2017-10-29 21:39:59 -07:00
Nikolay Kim
8ab04b39df update tests; clippy warnings 2017-10-29 15:04:44 -07:00
Nikolay Kim
b2670c94f4 added HttpRequest::content_type(), query() method returns HashMap 2017-10-29 06:03:21 -07:00
Nikolay Kim
d93244aa4f Do not use as it can not parse some valid paths 2017-10-27 22:19:00 -07:00
Nikolay Kim
488fb256b4 add optional skeptic 2017-10-26 06:12:23 -07:00
Nikolay Kim
e8936fe081 update multipart tests 2017-10-22 22:23:38 -07:00
Nikolay Kim
f737a3eb3e different ports 2017-10-22 21:52:01 -07:00
Nikolay Kim
8c48fdb0fc fix test 2017-10-22 17:47:22 -07:00
Nikolay Kim
5699af9795 more tests 2017-10-22 17:33:24 -07:00
Nikolay Kim
26989f5591 server tests 2017-10-22 12:48:43 -07:00
Nikolay Kim
d555fcabfc update tests 2017-10-22 08:14:23 -07:00
Nikolay Kim
6a33b65f02 refactor server router 2017-10-21 18:54:24 -07:00
Nikolay Kim
1db4200621 drop skeptic for now 2017-10-19 16:41:21 -07:00
Nikolay Kim
f59f68eded new router recognizer 2017-10-16 19:21:24 -07:00
Nikolay Kim
35107f64e7 make HttpServer generic over incoming stream 2017-10-16 13:13:32 -07:00
Nikolay Kim
ff6779a38e use ParseError for HttpRequest::chunked() 2017-10-16 10:31:31 -07:00
Nikolay Kim
95fa70d19e rename params to match_info 2017-10-16 10:20:16 -07:00
Nikolay Kim
02033724d8 test woth with_params 2017-10-16 09:58:54 -07:00
Nikolay Kim
88a81155bd added HttpRequest::query 2017-10-16 09:43:10 -07:00
Nikolay Kim
b79187a425 more tests 2017-10-14 23:14:26 -07:00
Nikolay Kim
41f1e6cdc9 split http request; add HttpRequest::range() 2017-10-14 22:52:38 -07:00
Nikolay Kim
f30aef404d fix tests 2017-10-14 11:13:02 -07:00
Nikolay Kim
edac148f7c added Httprequest::cookie() method 2017-10-14 11:02:25 -07:00
Nikolay Kim
f0531793b4 add cookies support for response 2017-10-14 10:40:58 -07:00
Nikolay Kim
5c9f813d28 more tests 2017-10-14 10:01:53 -07:00
Nikolay Kim
eedef6633c test placeholder 2017-10-14 01:45:23 -07:00
Nikolay Kim
86d9e9051d do not use skeptic tests for cov report 2017-10-14 01:36:39 -07:00
Nikolay Kim
26c1fdd31f rename tests 2017-10-14 01:20:06 -07:00
Nikolay Kim
5b6f5d8ce3 prep work 2017-09-30 09:10:03 -07:00