如何解决在Actix-Web中间件中返回响应
在设法访问视图之前,我设法使一些代码运行,这可以正常工作,因为我可以看到控制台的打印输出。但是,我一直在努力返回响应,而不是直击观点。但是,由于生命周期或未实现工厂特征,我只会不断出错。
下面的代码运行:
#[actix_rt::main]
async fn main() -> std::io::Result<()> {
HttpServer::new(|| {
let app = App::new()
.wrap_fn(|req,srv| {
// srv => routing
// req => service request
if *&req.path().contains("/item/") {
match views::token::process_token(&req) {
Ok(_token) => println!("the token is passable"),Err(message) => println!("token error: {}",message)
}
}
let fut = srv.call(req);
async {
let result = fut.await?;
Ok(result)
}
}).configure(views::views_factory);
return app
})
.bind("127.0.0.1:8000")?
.run()
.await
}
如果令牌错误,我该如何返回响应或重定向到特定视图,或更改请求路径?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。