我有一个 actix Web 服务器,我想在 FromRequest
实现中获取服务器的状态。
我尝试过类似的方法:
impl FromRequest for User {
type Config = ();
type Error = Error;
type Future = Pin<Box<dyn Future<Output = Result<User, actix_web::Error>>>>;
fn from_request(req: &HttpRequest, pl: &mut Payload, state: web::Data<State>) -> Self::Future {
...
}
}
但是,当然,这不起作用,因为 from_request
仅要求 2 个参数,而不是 3 个。
最佳答案
你可以这样做:
fn from_request(req: &HttpRequest, pl: &mut Payload) -> Self::Future {
let _state = req.app_data::<Data<State>>();
....
}
请参阅 app_data 的文档
关于rust - 在 FromRequest 实现中获取应用程序状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66106706/