我试图为“MyConfig”结构实现响应者特征。但我不知道如何创建可以从函数返回的响应(包括类型为字符串的主体)。
我试过这段代码。
#[derive(Debug)]
struct MyConfig {
body: String,
}
impl<'r> Responder<'r> for MyConfig {
fn respond_to(self, _req: &Request) -> response::Result<'r> {
let body: String = self.body.clone();
Response::build()
.status(Status::Ok)
// .raw_header("Access-Control-Allow-Origin", "*")
.sized_body(Cursor::new(body.as_str()))
.ok()
}
}
这无法编译,并显示此错误。
error[E0515]: cannot return value referencing local variable `body`
--> src/main.rs:53:9
|
53 | / Response::build()
54 | | .status(Status::Ok)
55 | | // .raw_header("Access-Control-Allow-Origin", "*")
56 | | .sized_body(Cursor::new(body.as_str()))
| | ---- `body` is borrowed here
57 | | .ok()
| |_________________^ returns a value referencing data owned by the current function