gpt4 book ai didi

rust - 如何在 Warp 中创建可变路径?

转载 作者:行者123 更新时间:2023-11-29 08:20:06 26 4
gpt4 key购买 nike

我正在尝试在 Warp 中设置可变路径。我试过这个:

use uuid::Uuid;
use warp::{self, Filter};

fn main() {
let uuid = Uuid::new_v4();

println!("{}", uuid);

let hello = warp::path(&uuid.to_string()).map(|| "hello world");

warp::serve(hello).run(([127, 0, 0, 1], 8080));
}

但是我得到了错误:

error[E0716]: temporary value dropped while borrowed
--> src/main.rs:9:29
|
9 | let hello = warp::path(&uuid.to_string()).map(|| "hello world");
| ------------^^^^^^^^^^^^^^^^- - temporary value is freed at the end of this statement
| | |
| | creates a temporary which is freed while still in use
| argument requires that borrow lasts for `'static`

让路径参数具有'static 生命周期的最佳方法是什么?

最佳答案

您可以通过泄漏从分配的字符串中获取静态字符串。

let uuid_str = Box::leak(uuid.to_string().into_boxed_str());
let hello = warp::path(uuid_str).map(|| "hello world");

关于rust - 如何在 Warp 中创建可变路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56895824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com