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

868 Commits

Author SHA1 Message Date
Sven-Hendrik Haase
492c072564 Add Content-Disposition to NamedFile (fixes #172) 2018-04-27 09:49:55 +02:00
Nikolay Kim
fd876efa68 allow to access application state during configuration stage 2018-04-26 09:05:07 -07:00
Nikolay Kim
927f2e594e
Merge branch 'master' into websocket_close_reason 2018-04-25 20:17:19 -07:00
Nikolay Kim
5ca904d1db make flate crate optional 2018-04-24 12:24:04 -07:00
Nikolay Kim
f8af3ef7f4 refactor keep-alive 2018-04-22 15:28:04 -07:00
Nathan Fox
f8b75c157f fix style 2018-04-22 11:43:47 -04:00
Nathan Fox
b7b61afacc add ws close description parse test 2018-04-21 17:20:23 -04:00
Nathan Fox
507361c1df Merge branch 'master' into websocket_close_reason 2018-04-21 17:05:43 -04:00
Nathan Fox
f6fd9e70f9 code cleanup 2018-04-21 16:53:55 -04:00
Nathan Fox
de8a09254d use Optional with websocket close reason 2018-04-21 16:50:27 -04:00
Brandur
59244b203c Let CSRF's allowed_origin() be specified as a type supporting Into<String>
A very minor addition: I'm using this middleware on specific resources,
and given a non-static string, I often have to `clone()` already to get
a string into a closure. Take this code for example:

``` rust
let server = actix_web::server::new(move || {
    let csrf_origin_graphql = csrf_origin.clone();

    ...

    .resource("/graphql", move |r| {
	r.middleware(
	    csrf::CsrfFilter::new().allowed_origin(csrf_origin_graphql.as_str()),
	);

	r.method(Method::POST).a(graphql::handlers::graphql_post);
    })
```

Letting `allowed_origin()` take an `Into<String>` instead of `&str` would
prevent a second `clone()` in the code above, and also make the code a little
nicer to read (you eliminate the `.as_str()` above). This is a pattern that
seems to be common throughout actix-web already anyway, so it should also be
fine to have here.
2018-04-21 08:41:06 -07:00
Nikolay Kim
2adf8a3a48 add changelog entry 2018-04-21 07:56:11 -07:00
Nathan Fox
5528cf62f0 check if close code exists before reading it 2018-04-20 21:30:18 -04:00
Nikolay Kim
01a0f3f5a0 remove unused dependency 2018-04-19 09:54:22 -07:00
Nikolay Kim
2c8d987241 Use Display formatting for InternalError Display implementation #188 2018-04-19 07:55:09 -07:00
Nikolay Kim
813d1d6e66 doc strings layout 2018-04-18 20:41:03 -07:00
Nikolay Kim
48b02abee7 fmt 2018-04-18 20:16:29 -07:00
Nikolay Kim
ce1081432b export session module 2018-04-18 20:11:49 -07:00
Nikolay Kim
e9bdba57a0 Add identity service middleware 2018-04-18 19:05:24 -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
022f9800ed formatting 2018-04-18 10:49:03 -07:00
Nikolay Kim
50b9fee3a7 Merge branch 'master' of github.com:actix/actix-web 2018-04-17 16:24:02 -07:00
Nikolay Kim
bf9a90293f fix doc strings 2018-04-17 16:22:25 -07:00
Kornel
5b4b885fd6 Replace use of try!() with ? 2018-04-17 23:20:47 +01:00
Nikolay Kim
65b8197876 better doc string for Application::with_state() 2018-04-17 13:59:55 -07:00
Nikolay Kim
a826d113ee add custom request path quoter #182 2018-04-17 12:55:13 -07:00
Nikolay Kim
3a79505a44 update doc string 2018-04-17 07:51:06 -07:00
Aleksey Ivanov
6a7b097bcf Fix route in App::resource example 2018-04-17 16:01:34 +03:00
Nikolay Kim
30a36bed9d fix doc example 2018-04-16 09:50:37 -07:00
Nikolay Kim
79818560b2 cleanup doc strings; prepare release 2018-04-16 09:30:59 -07:00
Nikolay Kim
58cc0dfbc5 Fix Client Request with custom Body Stream halting on certain size requests #176 2018-04-15 10:22:09 -07:00
Nikolay Kim
a9ea649348 Allow to configure StaticFiles CpuPool, via static method or env variable 2018-04-13 19:46:14 -07:00
Nikolay Kim
a5b5ff0894 update doc strings 2018-04-13 19:14:14 -07:00
Nikolay Kim
5140fea8d1 allow to use castom error handler for json extractor 2018-04-13 19:10:42 -07:00
Nikolay Kim
333b4f57d3 use different directory for tests 2018-04-13 17:00:18 -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
95f6277007 fix typo 2018-04-13 14:36:07 -07:00
Nikolay Kim
22c776f46e Fix StaticFiles does not support percent encoded paths #177 2018-04-13 10:13:12 -07:00
Nikolay Kim
c0976bfa17 fix test 2018-04-12 21:28:17 -07:00
Nikolay Kim
94c5bb5cdd add helper method for returning inner value 2018-04-12 15:55:15 -07:00
Nikolay Kim
2ca0ea70c4 use one default cpu pool for StaticFiles #174 2018-04-12 15:50:20 -07:00
Nikolay Kim
0b01884fca add timeouts stats to client connector 2018-04-12 13:08:13 -07:00
Nikolay Kim
83168731fc update user guide content compression section 2018-04-12 09:54:35 -07:00
Jan Niehusmann
72bc1546c4 fix end-of-stream handling in parse_payload
parse_payload can be called with a pre-filled buf.

In this case, it's totaly fine for read_from_io to return
sync::Ready(0) while buf is not empty. This is not an
PayloadError::Incomplete.

So, move the check for PayloadError::Incomplete down to the
decoding code: If the decoder is not ready, but the input stream
is finished, PayloadError::Incomplete will be returned.
2018-04-12 09:47:32 +02:00
Nikolay Kim
b517957761 fix stats for tls and alpn features 2018-04-11 16:34:01 -07:00
Nikolay Kim
d18f9c5905 add clinet connector stats 2018-04-11 16:11:11 -07:00
Douman
62a9b4c53c Rename HttpRequest::without_state into drop_state and make it public 2018-04-11 22:41:06 +03:00
Nikolay Kim
d041df6c4b update links 2018-04-10 19:27:09 -07:00
Nikolay Kim
be288fa00a for NamedFile process etag and last modified only if status code is 200 2018-04-10 10:57:53 -07:00
Nikolay Kim
fd87eb59f8 remove reference to master 2018-04-10 10:29:10 -07:00
Nikolay Kim
81ac905c7b fix prefix and static file serving #168 2018-04-10 10:16:00 -07:00
Nikolay Kim
bb11fb3d24 update client mod doc string 2018-04-09 21:57:40 -07:00
Nikolay Kim
23eea54776 update cors doc string 2018-04-09 21:39:32 -07:00
Nikolay Kim
2881859400 proper test for CorsBuilder::resource 2018-04-09 21:29:57 -07:00
Nikolay Kim
1686682c19 extend CorsBuilder api to make it more user friendly 2018-04-09 21:11:15 -07:00
Nikolay Kim
e757dc5a71 clippy warnings 2018-04-09 14:25:30 -07:00
Nikolay Kim
be358db422 CorsBuilder::finish() panics on any configuration error 2018-04-09 14:20:12 -07:00
Nikolay Kim
7df2d6b12a clippy warnings; extend url_for example in user guide 2018-04-09 13:30:38 -07:00
Nikolay Kim
0b0bbd6bd9
Merge branch 'master' into private-cookies 2018-04-09 12:54:08 -07:00
Nikolay Kim
5617896780 cleanup doc tests 2018-04-09 10:40:12 -07:00
Alex Whitney
2b803f30c9 remove CookieSessionBackend::new 2018-04-09 18:33:29 +01:00
Alex Whitney
9b152acc32 add signed and private cookies 2018-04-09 17:59:28 +01:00
Nikolay Kim
eb66685d1a simplify csrf middleware 2018-04-09 09:49:07 -07:00
Nikolay Kim
b505e682d4 fix session doc test 2018-04-09 09:31:11 -07:00
Nikolay Kim
ff14633b3d simplify CookieSessionBackend; expose max_age cookie setting 2018-04-08 11:05:37 -07:00
Nikolay Kim
37db7d8168 allow to override status code for NamedFile 2018-04-08 10:53:58 -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
Vincent Ambo
38063b9873 docs(client): Minor formatting and spelling fixes in module docs 2018-04-07 17:00:57 +02:00
Nikolay Kim
7243c58fce stable rust compatibility 2018-04-06 21:57:45 -07:00
Nikolay Kim
fffaf2bb2d App::route method 2018-04-06 21:18:42 -07:00
Nikolay Kim
542315ce7f simplify StaticFiles 2018-04-06 19:34:55 -07:00
Nikolay Kim
2d4ee0ee01 make Pause::new public 2018-04-06 12:34:24 -07:00
Nikolay Kim
5bd5f67d79 add Pause message constructors 2018-04-06 12:31:31 -07:00
Nikolay Kim
8d5fa6ee71 added Pause/Resume for client connector 2018-04-06 11:08:41 -07:00
Nikolay Kim
084104d058 update doc strings for extractors 2018-04-06 10:24:57 -07:00
Nikolay Kim
2c411a04a9 no need for export in doc example 2018-04-06 10:15:06 -07:00
Nikolay Kim
af0c8d893d add shortcut method for client requests 2018-04-06 10:09:31 -07: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
6c55501252 client connector wait timeout 2018-04-05 18:33:58 -07:00
Nikolay Kim
800f711cc1 add PayloadConfig 2018-04-04 21:13:48 -07:00
Nikolay Kim
7be4b1f399 clippy warns 2018-04-04 20:24:09 -07:00
Nikolay Kim
eeae0ddab4 start client timeout for response only 2018-04-04 20:15:47 -07:00
Nikolay Kim
d8a9606162 add connection limits to pool 2018-04-04 16:39:01 -07:00
Nikolay Kim
df21892b5b added extractor configuration 2018-04-03 22:06:18 -07:00
Nikolay Kim
a255a6fb69 use build_response method 2018-04-03 17:37:17 -07:00
Nikolay Kim
fee30d6f47 fix doc test compatibility 2018-04-02 22:01:20 -07:00
Nikolay Kim
476b1fb36a simplify DefaultHeaders middleware 2018-04-02 21:43:50 -07:00
Nikolay Kim
3b93bff602 add ErrorHandlers middleware 2018-04-02 21:37:00 -07:00
Nikolay Kim
d292c5023f add String and Bytes extractor 2018-04-02 16:19:18 -07:00
Nikolay Kim
ef6f310060 update urlencoded example in guide 2018-04-02 15:08:49 -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
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