1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-30 18:44:35 +01:00
Commit Graph

1943 Commits

Author SHA1 Message Date
Nikolay Kim
3fcd5f6935 use http::Uri for uri parsing 2017-11-30 19:01:25 -08:00
Nikolay Kim
7135c0163b simlify code 2017-11-30 18:27:27 -08:00
Nikolay Kim
f53f35f364 added tail pattern 2017-11-30 15:48:09 -08:00
Nikolay Kim
07cc017320 make Task private 2017-11-30 15:13:56 -08:00
Nikolay Kim
271a292ea5 no need to store disconnected state on task 2017-11-30 14:44:58 -08:00
Nikolay Kim
6e138bf373 refactor streaming responses 2017-11-30 14:42:20 -08:00
Nikolay Kim
a0bca2d4cf fix typo 2017-11-30 07:42:02 -08:00
Nikolay Kim
6c4fdf604b do not set content encoding header for upgraded connection 2017-11-29 19:40:27 -08:00
Nikolay Kim
e4f8551cba do not com press upgrade connection 2017-11-29 19:36:55 -08:00
Nikolay Kim
559b1c50a3 do not encode payload less that 1024 bytes 2017-11-29 19:18:37 -08:00
Nikolay Kim
d2eae3d5b3 simplify Handler trait 2017-11-29 15:10:45 -08:00
Nikolay Kim
991dd107b1 update ws doc 2017-11-29 14:12:27 -08:00
Nikolay Kim
acc2fff655 export and simplify HttpHandler trait 2017-11-29 13:53:52 -08:00
Nikolay Kim
427566b90d export Handler 2017-11-29 13:41:51 -08:00
Nikolay Kim
16ceb741b8 refactor RouteHandler trait 2017-11-29 13:26:55 -08:00
Nikolay Kim
6f833798c7 refactor http actor handling 2017-11-29 10:31:24 -08:00
Nikolay Kim
6177d86d97 refactor handler rtype handling 2017-11-29 09:17:00 -08:00
Nikolay Kim
e9bfab8012 add deref for payload item 2017-11-28 19:51:39 -08:00
Nikolay Kim
afeecea05f refactor reply handling 2017-11-28 19:49:17 -08:00
Nikolay Kim
987b275c3f add response test 2017-11-28 14:29:22 -08:00
Nikolay Kim
932e751240 add status code helper method for http response 2017-11-28 14:23:42 -08:00
Nikolay Kim
706e2a07de add helper converters into response 2017-11-28 13:52:53 -08:00
Nikolay Kim
b55d69b4c2 better handler result handling 2017-11-28 12:42:53 -08:00
Nikolay Kim
0bd8725426 make resource handler result more generic 2017-11-28 12:28:51 -08:00
Nikolay Kim
599f3c26e0 start working on guide 2017-11-27 16:41:37 -08:00
Nikolay Kim
b5a4f6f855 hellper method for json body 2017-11-27 10:39:47 -08:00
Nikolay Kim
170d3163f3 better export naming 2017-11-26 22:53:28 -08:00
Nikolay Kim
0519056199 consistent naming 2017-11-26 22:31:29 -08:00
Nikolay Kim
45433f71e5 impl Default trait for HttpRequest 2017-11-26 22:20:28 -08:00
Nikolay Kim
b62b303fdb remove unneeded directives 2017-11-26 22:11:51 -08:00
Nikolay Kim
8e80fed2af added urlencoded errors 2017-11-26 22:00:25 -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
8e0a7f44d4 pass request by value 2017-11-26 20:34:20 -08:00
Nikolay Kim
eb7f48a1c6 include payload into request 2017-11-26 19:00:57 -08:00
Nikolay Kim
32483735ba cookie session implementation 2017-11-26 17:34:11 -08:00
Nikolay Kim
53ce186294 cleanup pipeline 2017-11-25 12:05:27 -08:00
Nikolay Kim
37c1e78c7a added helper Task::error method 2017-11-25 10:52:43 -08:00
Nikolay Kim
45ecb87eab allow middlware error result 2017-11-25 10:24:45 -08:00
Nikolay Kim
54bbc98343 cookie session prototype 2017-11-25 09:52:32 -08:00
Nikolay Kim
f4972150cc better middleware error handling 2017-11-25 09:40:57 -08:00
Nikolay Kim
1fc64bc83d better pipeline error handling 2017-11-25 09:28:25 -08:00
Nikolay Kim
64ade803f9 store error for error response 2017-11-25 09:03:44 -08:00
Nikolay Kim
940bc08aba remove unused imports 2017-11-24 22:19:06 -08:00
Nikolay Kim
7569036dd4 refactor request pipeline 2017-11-24 22:15:52 -08:00
Nikolay Kim
59b8214685 better nightly detection 2017-11-24 10:28:43 -08:00
Nikolay Kim
f33c489154 added default ErrorResponse for std::error::Error 2017-11-24 10:03:13 -08:00
Nikolay Kim
5529ea0428 better logger format test 2017-11-23 16:53:02 -08:00
Nikolay Kim
39a20fb95d use env_logger for logger tests 2017-11-23 15:48:59 -08:00
Nikolay Kim
155a636487 more logger tests 2017-11-23 15:37:11 -08:00
Nikolay Kim
e571587a8c refactor logger middleware 2017-11-23 15:17:16 -08:00
Nikolay Kim
5945035fc3 better method name 2017-11-19 18:55:37 -10:00
Nikolay Kim
766e243c63 more Body tests 2017-11-19 18:32:37 -10:00
Nikolay Kim
83862dfbb4 update payload tests 2017-11-19 18:26:30 -10:00
Nikolay Kim
c44e4ad100 expect error tests 2017-11-19 18:02:31 -10:00
Nikolay Kim
1a0e87ac3c add tests for errors 2017-11-19 17:58:47 -10:00
Nikolay Kim
72edd75eab add custom ExceptError 2017-11-19 17:51:14 -10:00
Nikolay Kim
78d8d21196 cleanup error 2017-11-19 17:26:31 -10:00
Nikolay Kim
a87784ba15 use Result intead of HandlerResult 2017-11-18 06:50:07 -10:00
Nikolay Kim
c800bf55f5 update tests 2017-11-15 20:28:02 -10:00
Nikolay Kim
0143e18fe9 fix extern crate 2017-11-15 20:09:37 -10:00
Nikolay Kim
de71ad7de4 refactor error handling 2017-11-15 20:06:28 -10:00
Nikolay Kim
c565965865 rename BinaryBody 2017-11-10 13:42:32 -08:00
Nikolay Kim
f2520d2d79 update logger doc 2017-11-10 13:34:16 -08:00
Nikolay Kim
be3a1ab770 use remote addr in logger if available 2017-11-10 13:26:12 -08:00
Nikolay Kim
f369d9af0e make remote addr available to http request 2017-11-10 13:08:15 -08:00
Nikolay Kim
265628750c refactor logger middleware 2017-11-10 12:29:54 -08:00
Nikolay Kim
40c1d3b711 refactor middlewares 2017-11-09 22:08:54 -08:00
Nikolay Kim
51cd08ef57 store cookies load state 2017-11-08 21:01:56 -08:00
Nikolay Kim
e9fe2ba740 use bytes::Writer 2017-11-08 20:08:16 -08:00
Nikolay Kim
7565ed8e06 use higher pripority for br 2017-11-08 19:42:13 -08:00
Nikolay Kim
02fb424659 add custom Debug impl for HttpResponse 2017-11-08 19:31:25 -08:00
Nikolay Kim
e558414867 add response content encoding 2017-11-08 16:44:46 -08:00
Nikolay Kim
2eb3ad0de3 better name 2017-11-07 16:08:10 -08:00
Nikolay Kim
6974213036 use new brotli2 version 2017-11-07 15:59:37 -08:00
Nikolay Kim
a65fd695e1 refactor content encoding 2017-11-06 16:23:58 -08:00
Nikolay Kim
994d0afd80 allow to set/change responses content encoding 2017-11-06 14:56:38 -08:00
Nikolay Kim
2379bcbf39 added content-encoding support to h2 2017-11-06 09:35:52 -08:00
Nikolay Kim
bddd8e9c2e better deflate decoding 2017-11-06 09:24:19 -08:00
Nikolay Kim
c2978a6eea add content encoding decompression 2017-11-06 01:27:46 -08:00
Nikolay Kim
3f649b8e07 fix name 2017-11-04 14:07:15 -07:00
Nikolay Kim
f23974cfb5 update readme 2017-11-04 13:49:05 -07:00
Nikolay Kim
53868a88fa add keep-alive for h2 connection 2017-11-04 13:24:57 -07:00
Nikolay Kim
d7d3d663e9 refactor server impl and add support for alpn http2 negotiation 2017-11-04 12:33:14 -07:00
Nikolay Kim
32cefb8455 implement h2 writer 2017-11-04 09:07:44 -07:00
Nikolay Kim
4add742aba refactor task impl, extract stream writer to separate struct 2017-11-03 13:48:00 -07:00
Nikolay Kim
f010672885 rename modules 2017-11-03 13:48:00 -07:00
Nikolay Kim
c14e6c9008 make possible to use async handler 2017-11-03 13:35:34 -07:00
Nikolay Kim
ec3b139273 Allow to start tls server with HttpServer::serve_tls 2017-11-01 16:34:58 -07:00
Nikolay Kim
58de9dcf56 added new cancel_future_on_stop 2017-10-30 14:49:20 -07:00
Nikolay Kim
e3c058c96e convert from ref string into body 2017-10-29 22:50:21 -07:00
Nikolay Kim
4e216701c0 better handler function ergonimics 2017-10-29 21:39:59 -07:00
Nikolay Kim
8aa20c6261 disable print 2017-10-29 20:54:52 -07:00
Nikolay Kim
122fcd6881 stop http actor on write_eof 2017-10-29 20:51:06 -07:00
Nikolay Kim
dec4140733 added WsWriter::close 2017-10-29 19:49:59 -07:00
Nikolay Kim
8ab04b39df update tests; clippy warnings 2017-10-29 15:04:44 -07:00
Nikolay Kim
6b2248ecdf do not add error response if current response is in process 2017-10-29 14:51:30 -07:00
Nikolay Kim
a1b7d5995e conditional response build 2017-10-29 14:51:02 -07:00
Nikolay Kim
ce34eab832 better ws handshake error responses 2017-10-29 14:50:26 -07:00
Nikolay Kim
af1e0bac08 add HttpContext::drain() 2017-10-29 06:05:31 -07:00
Nikolay Kim
5cd25cc8b1 fix query splitting 2017-10-29 06:03:51 -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
76ffc60971 better path recognision 2017-10-27 19:26:53 -07:00
Nikolay Kim
fb0270e27d refactor Payload stream 2017-10-26 23:14:33 -07:00
Nikolay Kim
86583049fa Fix disconnection handling 2017-10-25 16:25:26 -07:00
Nikolay Kim
da79981d90 update actix 2017-10-24 20:24:14 -07:00
Nikolay Kim
5e54a80064 body tests 2017-10-24 00:09:52 -07:00
Nikolay Kim
ccb3f61d70 added response's helper method finish 2017-10-23 23:52:20 -07:00
Nikolay Kim
b9c11b56f8 added shared string body 2017-10-23 23:49:27 -07:00
Nikolay Kim
1aac83ac96 more body conversion impls 2017-10-23 23:44:03 -07:00
Nikolay Kim
4ee2a60d88 reuse BinaryBody for Frame::Payload 2017-10-23 23:39:01 -07:00
Nikolay Kim
c435f16170 refactory response body 2017-10-23 23:25:32 -07:00
Nikolay Kim
779b480663 more simplification for RouteRecognizer 2017-10-23 22:02:42 -07:00
Nikolay Kim
d9b89ccdac simplify RouteRecognizer reuse 2017-10-23 19:28:23 -07:00
Nikolay Kim
efada51f12 add exclude pattern for tests 2017-10-23 14:26:01 -07:00
Nikolay Kim
4d93766a0f payload error tests 2017-10-23 14:08:11 -07:00
Nikolay Kim
1cdfea39f0 wsframe tests 2017-10-23 13:31:22 -07:00
Nikolay Kim
f4180e78fe response tests 2017-10-22 22:54:11 -07:00
Nikolay Kim
e8936fe081 update multipart tests 2017-10-22 22:23:38 -07:00
Nikolay Kim
3adddc591d multipart tests 2017-10-22 21:40:41 -07:00
Nikolay Kim
5f90d0bcd6 unread_data tests 2017-10-22 20:19:20 -07:00
Nikolay Kim
d49e61591f fix payload readuntil 2017-10-22 20:07:18 -07:00
Nikolay Kim
32a9d9f683 payload tests 2017-10-22 19:58:50 -07:00
Nikolay Kim
33d0c39af6 tests 2017-10-22 18:32:54 -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
71f7606baf more tests 2017-10-22 09:45:53 -07:00
Nikolay Kim
6ad048d445 multipart boundary extraction 2017-10-22 09:30:05 -07:00
Nikolay Kim
f85925a652 refactor error handling 2017-10-22 09:13:29 -07:00
Nikolay Kim
d555fcabfc update tests 2017-10-22 08:14:23 -07:00
Nikolay Kim
afe9459ce1 pass request by ref; added middleware support 2017-10-21 22:59:59 -07:00
Nikolay Kim
7364e088be basic example 2017-10-21 19:35:50 -07:00
Nikolay Kim
6a33b65f02 refactor server router 2017-10-21 18:54:24 -07:00
Nikolay Kim
0d6e42e748 fix ws doc string 2017-10-21 15:40:16 -07:00
Nikolay Kim
4560ca17b2 update actix; update examples 2017-10-21 15:21:16 -07:00
Nikolay Kim
0bfe07b371 process inactive tasks 2017-10-20 23:12:36 -07:00
Nikolay Kim
71dc9edf8e add simple websocket example 2017-10-20 21:08:38 -07:00
Nikolay Kim
56c91adce2 add websocket example 2017-10-20 17:16:17 -07:00
Nikolay Kim
1db4200621 drop skeptic for now 2017-10-19 16:41:21 -07:00
Nikolay Kim
24804250a8 update multipart impl 2017-10-19 16:22:21 -07:00
Nikolay Kim
aaef550bc5 multipart implementation 2017-10-18 23:43:50 -07:00
Nikolay Kim
264380bf33 add multipart and urlencoded bodies support 2017-10-17 16:46:57 -07:00
Nikolay Kim
fb92d5552d update actix 2017-10-17 14:44:00 -07:00
Nikolay Kim
92b81899dd update doc strings 2017-10-16 20:13:47 -07:00
Nikolay Kim
774de4b44a doc string 2017-10-16 19:40:11 -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
2e96a79969 doc strings 2017-10-16 10:43:35 -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
88a81155bd added HttpRequest::query 2017-10-16 09:43:10 -07:00
Nikolay Kim
ba1a73443e added StaticFiles basic impl 2017-10-16 01:19:23 -07:00
Nikolay Kim
fa6bc35dbd update doc strings 2017-10-15 15:59:26 -07:00
Nikolay Kim
f1d6c61c5c add expect/continue support 2017-10-15 15:52:52 -07:00
Nikolay Kim
94c8aa6a54 do not use actix prelude 2017-10-15 15:10:35 -07:00
Nikolay Kim
955e50313d simplify server method 2017-10-15 14:53:03 -07:00
Nikolay Kim
5901f0f9f5 Application, router, resource builders 2017-10-15 14:17:41 -07:00
Nikolay Kim
5480cb5d49 rename httpmessage to httpresponse 2017-10-15 09:33:17 -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
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
95987daa72 rename to actix-web 2017-10-14 07:59:35 -07:00
Nikolay Kim
8c42b8ae86 more tests 2017-10-14 00:28:49 -07:00
Nikolay Kim
58c40e9610 reader tests 2017-10-14 00:11:12 -07:00
Nikolay Kim
02f2d0dfa2 disable try_trait in main 2017-10-13 18:58:22 -07:00
Nikolay Kim
178d2e846d do not use try_trait in main 2017-10-13 18:54:02 -07:00
Nikolay Kim
3516f02e4f keep-alive support 2017-10-13 16:33:23 -07:00
Nikolay Kim
0447c66de1 simplify Frame::Message; impl Try for Reply 2017-10-13 14:43:17 -07:00
Nikolay Kim
c0e73c7275 provide wait method 2017-10-11 19:20:05 -07:00
Nikolay Kim
8b1fdeb8c9 response version is optional 2017-10-10 17:14:30 -07:00
Nikolay Kim
0e6a67fc26 refactor response generation 2017-10-10 16:03:32 -07:00
Nikolay Kim
78e6149d9f fix connection upgrade 2017-10-10 12:39:24 -07:00
Nikolay Kim
9653a1fa98 export Body 2017-10-09 23:39:41 -07:00
Nikolay Kim
be7bda65ef clippy warnings 2017-10-09 23:10:15 -07:00
Nikolay Kim
676347d7f6 drop hyper 2017-10-09 23:07:32 -07:00
Nikolay Kim
994a9e907e use ActorItemsCell 2017-10-09 10:44:11 -07:00
Nikolay Kim
6d2f02ee5e doc strings 2017-10-08 20:55:44 -07:00
Nikolay Kim
e2dc775e21 refactor payload 2017-10-08 20:16:48 -07:00
Nikolay Kim
e398694bdb drop unused code 2017-10-08 17:47:41 -07:00
Nikolay Kim
63b78b6461 better naming 2017-10-08 14:56:51 -07:00
Nikolay Kim
c12669a435 update actix 2017-10-08 00:14:52 -07:00
Nikolay Kim
4102b9e1c5 update docs 2017-10-07 23:59:57 -07:00
Nikolay Kim
a021a06743 update ws docs 2017-10-07 22:41:02 -07:00
Nikolay Kim
f2d20514fa websocket support 2017-10-07 21:48:00 -07:00
Nikolay Kim
9b7f2395e5 better naming 2017-10-07 00:31:40 -07:00
Nikolay Kim
127cc270da better naming 2017-10-07 00:22:09 -07:00
Nikolay Kim
ce4aea46c3 better naming 2017-10-06 23:36:36 -07:00
Nikolay Kim
a505be9321 docs 2017-10-06 23:14:13 -07:00
Nikolay Kim
0b5f0c4f22 initial implementation 2017-10-06 21:51:27 -07:00
Nikolay Kim
5b6f5d8ce3 prep work 2017-09-30 09:10:03 -07:00