let provider: Provider<Ws> = match Provider::<Ws>::connect(wss_url).await { Ok(p) => { println!("成功连接到 WebSocket 端点"); p } Err(e) => { eprintln!("连接失败: {:?}, 5秒后重试...", e); return Err(e.into()); } }; let provider = Arc::new(provider);
// 订阅待处理交易流
let mut stream = match provider.subscribe_pending_txs().await {
Ok(stream) => {
println!("成功订阅待处理交易流");
stream
}
Err(e) => {
eprintln!("订阅失败: {:?}, 5秒后重试...", e);
return Err(e.into());
}
};
//上面代码已经成功订阅交易流了,但let res = stream.next().await; 这个代码一直没有收到任何消息