问题描述
我有一个 actix 网络服务器,我想在 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>>();
....
}