提问人:user3353185 提问时间:10/23/2023 最后编辑:cafce25user3353185 更新时间:10/25/2023 访问量:88
如何处理第三方结构体的“未找到名为'clone'的方法”
How to deal with "no method named `clone` found" for third-party struct
问:
我是 Rust 的新手,正在尝试使用以下代码中创建的值两次:response
let response = reqwest::blocking::get(
"https://www.imdb.com/search/title/?groups=top_100&sort=user_rating,desc&count=100"
).unwrap();
r = response.clone(); // <- ERROR
let response_text = response
.text()
.unwrap();
如果我分配给我,我就会失去对它的访问权限。因此,我首先尝试将其克隆到另一个变量中。但是,我收到一个错误说.response
response_text
no method named `clone` found for struct `reqwest::blocking::Response` in the current scope
如何解决此问题?搜索此问题的大多数结果都建议我创建自己的结构,将结构嵌入其中,然后手动实现一个特征。当然,一定有一种更简单的方法(我希望)!Response
.clone()
答:
0赞
user3353185
10/25/2023
#1
我发现最有用的答案来自@isaactfa的评论,我在这里逐字复制:
- 您无法克隆响应,因为它拥有只能读取一次的流。如果您需要克隆该数据,您可以将其从响应中获取(例如使用 .text())并克隆它。
评论
响应
测试的问答Clone
.text()
Response
.text()
Response
Response
.text()