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
Nikolay Kim
9653a1fa98
export Body
2017-10-09 23:39:41 -07:00
Nikolay Kim
676347d7f6
drop hyper
2017-10-09 23:07:32 -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
4102b9e1c5
update docs
2017-10-07 23:59:57 -07:00
Nikolay Kim
f2d20514fa
websocket support
2017-10-07 21:48:00 -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