axum/axum-macros/tests/from_ref/pass/basic.rs
David Pedersen 0b26411f39
Change Router::with_state and impl Service for Router<()> (#1552)
* Implement `Service` for `Router<(), B>`

* wip

* wip

* fix some tests

* fix examples

* fix doc tests

* clean up docs

* changelog

* fix

* also call `with_state` when converting `MethodRouter` into a `MakeService`

* suggestions from review
2022-11-24 14:43:10 +00:00

20 lines
473 B
Rust

use axum::{Router, routing::get, extract::{State, FromRef}};
// This will implement `FromRef` for each field in the struct.
#[derive(Clone, FromRef)]
struct AppState {
auth_token: String,
}
// So those types can be extracted via `State`
async fn handler(_: State<String>) {}
fn main() {
let state = AppState {
auth_token: Default::default(),
};
let _: axum::Router = Router::new()
.route("/", get(handler))
.with_state(state);
}