相关疑难解决方法(0)

为什么serde_json :: from_reader取得了读者的所有权?

我的代码:

fn request_add<T>(request: &mut Request, collection_name: &'static str) -> Fallible<Fallible<String>>
where
    T: serde::Serialize + serde::de::DeserializeOwned,
{
    let add_dao = dao::MongoDao::new(collection_name);
    let obj = serde_json::from_reader::<Body, T>(request.body)?; //cannot move out of borrowed content
    Ok(add_dao.add(&obj))
}
Run Code Online (Sandbox Code Playgroud)

我有一个cannot move out of borrowed content错误,因为request是一个参考,但为什么不serde_json::from_reader使用mut引用?为什么需要所有权?我该如何解决?

json rust serde

12
推荐指数
1
解决办法
302
查看次数

标签 统计

json ×1

rust ×1

serde ×1