【问题标题】:How to correctly import web3::api::eth::Eth pub fn transaction_count in Rust?如何在 Rust 中正确导入 web3::api::eth::Eth pub fn transaction_count?
【发布时间】:2022-11-19 05:49:41
【问题描述】:
我是 Rust 的新手。我正在尝试导入函数 web3::api::eth::Eth pub fn transaction_count 但无法导入。我的 Carg.toml 文件中安装了 web3 crate:
web3 = "0.18.0"
由于将鼠标悬停在 transaction_count 函数上显示:
pub fn transaction_count(&self, address: Address, block: Option<BlockNumber>) -> CallFuture<U256, T::Out>
因此我尝试像这样导入它:
use web3::api::eth::Eth::{self, transaction_count};
但是我无法在 eth 上 Cmd + click 但我可以在 api 上这样做。
我应该如何正确导入它?
【问题讨论】:
标签:
rust
rust-cargo
rust-web3
【解决方案1】:
这是一个完整的例子(基于this)
use web3::{Web3, transports};
#[tokio::main]
async fn main() -> web3::Result<()> {
// bsc node
let transport = transports::Http::new("https://bsc-dataseed.binance.org/")?;
let web3 = Web3::new(transport);
println!("Calling accounts.");
let mut accounts = web3.eth().accounts().await?;
println!("Accounts: {:?}", accounts);
// Cake token
accounts.push("0x0e09fabb73bd3ade0a17ecc321fd13a19e81ce82".parse().unwrap());
println!("Calling transaction count");
let count = web3.eth().transaction_count(accounts[0], None).await?;
println!("Transaction count: {:?}", count);
Ok(())
}
Cake 令牌的交易计数为 1,这不是很有趣,但如果您愿意,可以使用其他地址