David Pedersen
f8a0d81d79
Remove tower from axum's public API ( #229 )
...
Instead rely on `tower-service` and `tower-layer`. `tower` itself is
only used internally.
Fixes https://github.com/tokio-rs/axum/issues/186
2021-08-21 15:01:30 +02:00
David Pedersen
e22045d42f
Change nested routes to see the URI with prefix stripped ( #197 )
2021-08-18 09:48:36 +02:00
David Pedersen
be7e9e9bc6
Refactor TypedHeader extractor ( #189 )
...
I should use `HeaderMapExt::typed_try_get` rather than implementing it
manually.
2021-08-16 09:05:10 +02:00
David Pedersen
6b218c7150
Clean up RequestParts API ( #167 )
...
In http-body 0.4.3 `BoxBody` implements `Default`. This allows us to
clean up the API of `RequestParts` quite a bit.
2021-08-08 19:48:30 +02:00
David Pedersen
b4bdddf9d2
Add NestedUri ( #161 )
...
Fixes https://github.com/tokio-rs/axum/issues/159
2021-08-08 14:45:31 +02:00
David Pedersen
a6b3e09827
Remove UrlParamsMap and UrlParams ( #154 )
...
Use `extract::Path` instead.
2021-08-07 21:22:08 +02:00
David Pedersen
6a82dd75ea
Implement std::error::Error for all rejections ( #153 )
2021-08-07 21:03:04 +02:00
David Pedersen
4bb17cbc2d
Remove take_* methods from RequestParts for Version, Method, and Uri ( #151 )
...
* Remove `RequestParts::take_method`
* Remove `RequestParts::take_uri`
* Remove `RequestParts::take_version`
2021-08-07 20:24:13 +02:00
David Pedersen
75b5615ccd
Add axum::Error ( #150 )
...
Replace `BoxStdError` and supports downcasting
2021-08-07 19:56:44 +02:00
David Pedersen
ab927033b3
Support returning any http_body::Body from IntoResponse ( #86 )
...
Adds associated `Body` and `BodyError` types to `IntoResponse`. This is required for returning responses with bodies other than `hyper::Body` from handlers. That wasn't previously possible.
This is a breaking change so should be shipped in 0.2.
2021-08-07 18:03:21 +02:00
David Pedersen
b5b9db47db
Remove QueryStringMissing as it was no longer being used ( #125 )
...
* Remove `QueryStringMissing` as it was no longer being used
* remove it in a few more places
2021-08-07 16:31:51 +02:00
Sunli
9fdbd42fba
Implement path extractor ( #124 )
...
Fixes #42
2021-08-06 10:17:57 +02:00
David Pedersen
a8eb26b672
Fix typos in rejection messages
2021-08-05 08:36:42 +02:00
David Pedersen
a95b48b70c
Deprecate QueryStringMissing ( #119 )
...
Since https://github.com/tokio-rs/axum/pull/117 its no longer used. Will
be removed in 0.2.
2021-08-04 17:58:34 +02:00
David Pedersen
2cf28c6794
Improve error message of MissingExtension rejections ( #72 )
...
Now includes the name of missing type.
2021-08-01 15:50:57 +02:00
David Pedersen
f32d325e55
Make extractors easier to write ( #36 )
...
Previously extractors worked directly on `Request<B>` which meant you
had to do weird tricks like `mem::take(req.headers_mut())` to get owned
parts of the request.
This changes that instead to use a new `RequestParts` type that have
methods to "take" each part of the request. Without having to do weird
tricks.
Also removed the need to have `B: Default` for body extractors.
2021-07-22 13:23:50 +02:00
David Pedersen
028c472c84
Add Multipart extractor for consuming multipart/form-data requests ( #32 )
...
Multipart implementation on top of `multer`
2021-07-14 16:53:37 +02:00
David Pedersen
5a5710d290
Rename to axum ( #28 )
2021-07-09 21:36:14 +02:00
David Pedersen
44577a0108
Add testing example ( #24 )
2021-06-19 13:44:21 +02:00
David Pedersen
356f1c8424
Generic request body ( #22 )
...
Fixes #21
2021-06-19 12:50:33 +02:00
David Pedersen
b6e67eefd7
Add support for extracting typed headers ( #18 )
...
Uses the `headers` crate.
2021-06-15 21:27:21 +02:00
David Pedersen
c41c9e0f78
Support extracting URL params multiple times ( #15 )
...
Useful when building higher order extractors.
2021-06-13 13:06:33 +02:00
David Pedersen
2b360a7873
Support getting error from extractors ( #14 )
...
Makes `Result<T, T::Rejection>` an extractor and makes all extraction errors enums so no type information is lost.
2021-06-13 12:06:59 +02:00
David Pedersen
1002685a20
Rename to awebframework ( #13 )
2021-06-13 11:22:02 +02:00
David Pedersen
27ebb3db7a
Add Form extractor ( #12 )
...
Fixes https://github.com/davidpdrsn/tower-web/issues/2
2021-06-13 11:01:40 +02:00
David Pedersen
c91dc7ce29
Make Request<Body> an extractor
2021-06-09 09:42:06 +02:00
David Pedersen
90c3e5ba74
Parameterize ContentLengthLimit
2021-06-09 08:14:20 +02:00
David Pedersen
1cf78fa807
More docs
2021-06-08 22:04:28 +02:00
David Pedersen
1f8b39f05d
More docs and expand key_value_store example
2021-06-08 12:43:16 +02:00
David Pedersen
d376e49eb9
More docs
2021-06-07 16:28:40 +02:00
David Pedersen
7620f17edc
Remove some needless type params
2021-06-06 22:41:52 +02:00
David Pedersen
46398afc72
Move things around a bit
2021-06-06 11:37:08 +02:00