我试图找出构建一个需要将文件内容读入的功能,futures::stream::BoxStream但我很难弄清楚我需要做什么。
我已经弄清楚如何通过实现迭代器的 Bytes 逐字节读取文件。
use std::fs::File;
use std::io::prelude::*;
use std::io::{BufReader, Bytes};
// TODO: Convert this to a async Stream
fn async_read() -> Box<dyn Iterator<Item = Result<u8, std::io::Error>>> {
let f = File::open("/dev/random").expect("Could not open file");
let reader = BufReader::new(f);
let iter = reader.bytes().into_iter();
Box::new(iter)
}
fn main() {
ctrlc::set_handler(move || {
println!("received Ctrl+C!");
std::process::exit(0);
})
.expect("Error setting Ctrl-C handler");
for b in async_read().into_iter() {
println!("{:?}", b);
}
}
Run Code Online (Sandbox Code Playgroud)
但是,我一直在苦苦挣扎,试图弄清楚如何将其Box<dyn Iterator<Item = Result<u8, std::io::Error>>>转换为Stream.
我会认为这样的事情会起作用: …
我想知道是否可以在测试中保存 localStorage 的状态。主要是因为我想避免每次测试时重新进行身份验证。我意识到我可以创建一个命令,将 API 请求发送到后端,以避免通过身份验证流程,但由于各种原因,这在我的情况下不起作用。
我想问是否可以有这样的工作流程: