我想调用一个二进制值为的redis函数 [u8]
使用 redis-rs
使用以下代码的板条箱:
let _ : () = redis::cmd("...").arg("...").arg(data).query(&mut con)?;
但是,当 data
是 Vec<u8>
:
the trait `redis::ToRedisArgs` is not implemented for `&std::vec::Vec<u8>`
这个错误发生在 data
是 [u8]
:
the trait `redis::ToRedisArgs` is not implemented for `[u8]`
在查看文档时 ToRedisArgs
,应该有一个 Vec<T>
不过。
1条答案
按热度按时间byqmnocz1#
下面是一个可重现的问题示例:
编译它会导致以下错误:
如错误消息所述,
ToRedisArgs
为实现Vec<T>
,但不是&Vec<T>
. 要绕过这个,你可以克隆data
得到一个Vec<u8>
:或者,你可以从向量中提取一个切片,因为
ToRedisArgs
为切片实现: