1
0
mirror of https://github.com/fafhrd91/actix-web synced 2024-11-28 01:52:57 +01:00
Commit Graph

361 Commits

Author SHA1 Message Date
Nikolay Kim
b8b90d9ec9 rename ResourceHandler to Resource 2018-07-12 15:30:01 +06:00
Diggory Blake
85012f947a Remove reimplementation of LazyCell 2018-07-06 22:28:08 +01:00
Nikolay Kim
4c5a63965e use new actix context api 2018-07-04 17:04:23 +06:00
Nikolay Kim
fec6047ddc refactor HttpRequest mutability 2018-07-02 23:35:32 +06:00
Gowee
0be5448597 Properly escape special characters in fs/directory_listing. (#355) 2018-06-30 15:01:48 +03:00
Nikolay Kim
4fadff63f4 Use Box::leak for dynamic param names 2018-06-23 09:57:03 +06:00
Armin Ronacher
7bc7b4839b
Switch from fnv to a identity hasher in extensions (#342) 2018-06-22 11:32:32 +02:00
Armin Ronacher
dda6ee95df
Changes the router to use atoms internally (#341) 2018-06-22 09:33:32 +02:00
Nikolay Kim
765c38e7b9 remove libc dependency 2018-06-22 11:47:33 +06:00
Nikolay Kim
0093b7ea5a refactor extractor configuration #331 2018-06-21 11:47:01 +06:00
Nikolay Kim
5c42b0902f better doc api examples 2018-06-19 12:07:07 +06:00
Nikolay Kim
ef15646bd7 refactor edfault cpu pool 2018-06-18 04:56:18 +06:00
Nikolay Kim
b6ed778775 remove HttpMessage::range() 2018-06-17 08:48:50 +06:00
Nikolay Kim
879b2b5bde port Extensions from http crate #315 2018-06-17 03:22:08 +06:00
Nikolay Kim
ef420a8bdf fix docs.rs 2018-06-11 12:21:09 -07:00
axon-q
c0c1817b5c remove unicase dependency 2018-06-07 10:33:00 +00:00
axon-q
936ba2a368 multipart: parse and validate Content-Disposition 2018-06-06 14:06:01 +00:00
Nikolay Kim
ea018e0ad6 better examle in doc string 2018-06-02 16:03:23 -07:00
Nikolay Kim
3bfed36fcc do not re-export actix_inner 2018-06-02 09:14:47 -07:00
Pascal Hertleif
890a7e70d6 Add missing API docs
These were written without much knowledge of the actix-web internals!
Please review carefully!
2018-06-02 15:52:50 +02:00
Pascal Hertleif
47b7be4fd3 Add warning for missing API docs 2018-06-02 15:50:45 +02:00
Nikolay Kim
c8930b7b6b fix rustfmt formatting 2018-06-01 10:27:23 -07:00
Nikolay Kim
154cd3c5de better actix mod re-exports 2018-06-01 09:36:16 -07:00
Douman
80965d7a9a
Re-export actix dependency. Closes #260 (#264)
- Re-export actix's prelude into actix namespace
- Removing implicit dependency on root's actix module
2018-05-31 20:43:14 +03:00
Nikolay Kim
f48702042b min rustc version 2018-05-24 21:09:20 -07:00
Nikolay Kim
690169db89 migrate to tokio 2018-05-24 21:03:16 -07:00
Nikolay Kim
72757887c9 update doc links 2018-05-23 11:20:12 -07:00
Nikolay Kim
d6787e6c56 prepare release 2018-05-15 10:20:32 -07:00
Nikolay Kim
d8fa43034f export ExtractorConfig type 2018-05-10 11:00:22 -07:00
Nikolay Kim
e58b38fd13 deprecate WsWrite from top level mod 2018-05-09 06:12:16 -07:00
Nikolay Kim
be12d5e6fc make WsWriter trait optional 2018-05-09 05:48:06 -07:00
Alexander Andreev
cd11293c1f spelling check 2018-05-06 19:07:30 +03:00
Nikolay Kim
8b43574bd5 Merge branch 'master' of github.com:actix/actix-web 2018-05-03 16:27:12 -07:00
Nikolay Kim
acd7380865 rename Reply to a AsyncResult 2018-05-03 16:22:08 -07:00
Denis Kolodin
80f385e703 Add WsWriter trait
`WsWriter` trait is a common interface for writing to a websocket and
it's implemented for both: `WebScoketContext` and `ClientWriter`.
2018-05-02 08:35:50 +03:00
Nikolay Kim
d43ca96c5c Allow to use ssl and non-ssl connections with the same HttpServer #206 2018-04-30 19:51:55 -07:00
Nikolay Kim
eefbe19651 remove deprecated types and methods 2018-04-29 21:05:10 -07:00
Nikolay Kim
368730f5f1 Add route scopes #202 2018-04-29 19:35:50 -07:00
Nikolay Kim
03ded62337 bump minimum supported rustc version because of minor version change of parking_lot crate 2018-04-29 14:13:46 -07:00
Nikolay Kim
d98d723f97 bump rustc version requirements 2018-04-29 08:24:19 -07:00
Nikolay Kim
5ca904d1db make flate crate optional 2018-04-24 12:24:04 -07:00
Nikolay Kim
01a0f3f5a0 remove unused dependency 2018-04-19 09:54:22 -07:00
Nikolay Kim
a826d113ee add custom request path quoter #182 2018-04-17 12:55:13 -07:00
Nikolay Kim
a8567da3e2 move guide to separate repo; update links 2018-04-13 16:20:23 -07:00
Nikolay Kim
113f5ad1a8 add rustfmt config 2018-04-13 16:02:01 -07:00
Nikolay Kim
d041df6c4b update links 2018-04-10 19:27:09 -07:00
Vincent Ambo
9fb0498437 docs(lib): Add a note about getting started with the API docs
Adds some initial pointers for newcomers to the documentation that
direct them at some of the most commonly used API types.

I based these links on what *I* usually end up looking at when I open
the actix_web docs.
2018-04-07 17:27:53 +02:00
Vincent Ambo
b2a43a3c8d docs(application): Formatting & spelling fixes in module docs 2018-04-07 17:19:11 +02:00
Nikolay Kim
691457fbfe update tests 2018-04-06 09:45:10 -07:00
Nikolay Kim
2dafd9c681 do not re-export HttpServer from server module 2018-04-06 08:40:11 -07:00
Nikolay Kim
800f711cc1 add PayloadConfig 2018-04-04 21:13:48 -07:00
Nikolay Kim
df21892b5b added extractor configuration 2018-04-03 22:06:18 -07:00
Nikolay Kim
d292c5023f add String and Bytes extractor 2018-04-02 16:19:18 -07:00
Nikolay Kim
a6cbdde43f add extractor for Binary type; move all extractors to separate module 2018-04-02 14:55:42 -07:00
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
17c27ef42d HttpRequest::resource() returns current matched resource 2018-04-01 17:37:22 -07:00
Nikolay Kim
8791c0f880 simplify With handlers 2018-03-31 09:58:33 -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
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
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
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
4f7d45ee9c remove unneeded import 2018-03-28 14:38:01 -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
9f5a91ae3c export types 2018-03-27 21:59:55 -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
68cf32e848 add path and query extractors 2018-03-26 15:58:30 -07:00
Nikolay Kim
0f064db31d Move brotli encoding to a feature 2018-03-13 17:21:22 -07:00
Nikolay Kim
cad55f9c80 add Either responder 2018-03-10 09:39:43 -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
kingxsp
a0b589eb96 Add protobuf support 2018-03-09 10:05:13 +08:00
Nikolay Kim
47f01e5b7e update doc string 2018-03-07 21:39:20 -08:00
Nikolay Kim
f55ef3a059 create default CpuPool 2018-03-07 14:56:53 -08:00
Nikolay Kim
acd33cccbb add tls 2018-03-06 17:34:46 -08:00
Nikolay Kim
a0e6313d56 Fix compression #103 and #104 2018-03-06 11:02:03 -08:00
Nikolay Kim
32b5544ad9 port hyper header 2018-03-06 00:43:25 -08:00
Nikolay Kim
0c30057c8c move headers to separate module; allow custom HeaderValue conversion 2018-03-05 16:45:54 -08:00
Nikolay Kim
4aaf9f08f8 update readme 2018-02-28 22:31:54 -08:00
Nikolay Kim
171a23561e export Drain 2018-02-28 11:10:54 -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
Nikolay Kim
6c480fae90 added HttpRequest::encoding() method; fix urlencoded parsing with charset 2018-02-27 11:31:54 -08:00
Nikolay Kim
d6fd4a3524 use buffer capacity; remove unused imports 2018-02-26 15:34:25 -08:00
Nikolay Kim
72aa2d9eae clippy warnings 2018-02-26 14:33:56 -08:00
Nikolay Kim
644f1a9518 refactor ws frame parser 2018-02-26 13:58:23 -08:00
Nikolay Kim
a2b98b31e8 refactor payload related futures for HttpRequest 2018-02-25 20:34:26 +03:00
Nikolay Kim
4e41e13baf refactor client payload processing 2018-02-25 11:18:17 +03:00
Nikolay Kim
edd114f6e4 allow to set default content encoding on application level 2018-02-18 22:23:17 -08:00
Nikolay Kim
856055c6ca simplify HttpServer::start_tls() method 2018-02-10 11:34:54 -08:00
Nikolay Kim
78da98a16d add wsload tool; optimize ws frame parser 2018-02-09 17:20:28 -08:00
Nikolay Kim
5cbaf3a1b8 add client ssl support 2018-01-30 11:17:17 -08:00
Nikolay Kim
a02e0dfab6 initial work on client connector 2018-01-29 23:01:20 -08:00
Nikolay Kim
b686f39d0b complete impl for client request and response 2018-01-29 14:44:25 -08:00
Nikolay Kim
6416a796c3 add ClientRequest and ClientRequestBuilder 2018-01-29 11:45:33 -08:00
Nikolay Kim
5dd2e7523d basic websocket client 2018-01-27 22:03:03 -08:00
Nikolay Kim
11342e4566 add link to gitter 2018-01-11 18:49:30 -08:00
Nikolay Kim
f7b895b53a add link to github 2018-01-11 18:47:34 -08:00
Nikolay Kim
ac89880c0a move encoding to server 2018-01-11 18:41:33 -08:00
Nikolay Kim
8a058efb4e move server protocol impl to submodule 2018-01-11 18:35:05 -08:00
Nikolay Kim
3f3dcf413b move websocket code to submodule 2018-01-10 11:13:29 -08:00
Nikolay Kim
4b72a1b325 create custom WebsocketContext for websocket connection 2018-01-10 10:12:34 -08:00
Nikolay Kim
a159a9cd6e cleanup doc tests 2018-01-09 10:08:06 -08:00
Nikolay Kim
ae084d1146 added helper future for reading request body 2018-01-03 09:23:58 -08:00
Nikolay Kim
1d195a2cf2 make Pipeline private 2017-12-29 09:16:50 -08:00
Nikolay Kim
d87fafb563 fix and refactor middleware runner 2017-12-29 01:01:31 -08:00
Nikolay Kim
308df19865 update readme 2017-12-28 16:27:08 -08:00
Nikolay Kim
6a2bb9a473 split worker code to separate module 2017-12-28 12:38:37 -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
29adc20581 rename module 2017-12-26 19:59:41 -08:00
Nikolay Kim
f6510161b5 add simple TestServer for integrational tests cases 2017-12-26 16:35:00 -08:00
Nikolay Kim
63ddc07ccb added JsonBody future 2017-12-20 20:30:54 -08:00
Nikolay Kim
33b2be3281 move json responder to separate module 2017-12-20 17:51:28 -08:00
Nikolay Kim
f3b853f224 refactor payload 2017-12-19 00:18:57 -08:00
Nikolay Kim
0cab873066 make payload sender public 2017-12-18 21:58:38 -08:00
Nikolay Kim
9ed4159c0c update examples 2017-12-18 13:06:41 -08:00
Nikolay Kim
27d92f3a23 refactor server bind and start process 2017-12-17 12:35:04 -08:00
Nikolay Kim
c98d320f8c rename FromRequest trait to Responder 2017-12-14 09:43:42 -08:00
Nikolay Kim
355f54efe2 update api docs 2017-12-13 23:35:21 -08:00
Nikolay Kim
4529efa948 rename module 2017-12-13 22:54:52 -08:00
Nikolay Kim
b7cde3f4a9 update guide 2017-12-13 22:36:28 -08:00
Nikolay Kim
c2751efa87 refactor keep-alive; update guide 2017-12-13 21:38:47 -08:00
Nikolay Kim
96f598f2c4 various optimizations 2017-12-13 16:44:35 -08:00
Nikolay Kim
ab6efd2421 handle http connections in different threads 2017-12-12 17:21:00 -08:00
Nikolay Kim
7addd2800d add NormalizePath handler 2017-12-09 11:39:13 -08:00
Nikolay Kim
a44f71d8c2 make ErrorBadRequest type useful 2017-12-08 15:25:37 -08:00
Nikolay Kim
2192d14eff added ServerSettings 2017-12-07 22:54:44 -08:00
Nikolay Kim
b71ddf7b4c pass local addr to channel; use bitflags 2017-12-07 21:52:46 -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
4b03d03404 rearrange exports 2017-12-06 17:06:40 -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
04ded5ba68 hide pkcs 2017-12-06 07:49:01 -08:00
Nikolay Kim
903b391e0a move ConnectionInfo to dev 2017-12-06 07:47:42 -08:00
Nikolay Kim
c3de32c3b3 added ConnectionInfo 2017-12-05 17:09:15 -08:00
Nikolay Kim
f4e9fc7b6a rename async to a 2017-12-04 16:09:22 -08:00
Nikolay Kim
e332c1242f use Route for Applicaiton handlers 2017-12-04 14:53:40 -08:00
Nikolay Kim
3bf3738e65 introduce route predicates 2017-12-04 13:32:05 -08:00
Nikolay Kim
319e9bbd05 added Json response support 2017-12-03 18:51:52 -08:00
Nikolay Kim
7c6faaa8e0 add Item and Error to FromRequest trait 2017-12-03 14:22:04 -08:00
Nikolay Kim
fb3185de94 rename module 2017-12-02 16:47:02 -08:00
Nikolay Kim
47645626c4 refactor pipeline 2017-12-01 15:45:15 -08:00
Nikolay Kim
6e138bf373 refactor streaming responses 2017-11-30 14:42:20 -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
afeecea05f refactor reply handling 2017-11-28 19:49:17 -08:00
Nikolay Kim
170d3163f3 better export naming 2017-11-26 22:53:28 -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
a87784ba15 use Result intead of HandlerResult 2017-11-18 06:50:07 -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
be3a1ab770 use remote addr in logger if available 2017-11-10 13:26:12 -08:00
Nikolay Kim
40c1d3b711 refactor middlewares 2017-11-09 22:08:54 -08:00
Nikolay Kim
a65fd695e1 refactor content encoding 2017-11-06 16:23:58 -08:00
Nikolay Kim
c2978a6eea add content encoding decompression 2017-11-06 01:27:46 -08: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
4e216701c0 better handler function ergonimics 2017-10-29 21:39:59 -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
af1e0bac08 add HttpContext::drain() 2017-10-29 06:05:31 -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
c435f16170 refactory response body 2017-10-23 23:25:32 -07:00
Nikolay Kim
3adddc591d multipart tests 2017-10-22 21:40:41 -07:00
Nikolay Kim
26989f5591 server tests 2017-10-22 12:48:43 -07:00
Nikolay Kim
f85925a652 refactor error handling 2017-10-22 09:13:29 -07:00
Nikolay Kim
afe9459ce1 pass request by ref; added middleware support 2017-10-21 22:59:59 -07:00
Nikolay Kim
6a33b65f02 refactor server router 2017-10-21 18:54:24 -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
f59f68eded new router recognizer 2017-10-16 19:21:24 -07:00
Nikolay Kim
ba1a73443e added StaticFiles basic impl 2017-10-16 01:19:23 -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
41f1e6cdc9 split http request; add HttpRequest::range() 2017-10-14 22:52:38 -07:00
Nikolay Kim
f0531793b4 add cookies support for response 2017-10-14 10:40:58 -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
0e6a67fc26 refactor response generation 2017-10-10 16:03:32 -07:00