login_status/
login_status.rs1#[path = "common/account.rs"]
10mod account;
11
12use bpi_rs::BpiResult;
13
14#[tokio::main]
15async fn main() -> BpiResult<()> {
16 let client = account::authenticated_client()?;
17 let login = client.login();
18
19 let nav = login.nav().await?;
20 println!(
21 "登录状态: is_login={} mid={:?} uname={}",
22 nav.is_login,
23 nav.mid,
24 nav.uname.as_deref().unwrap_or("<unknown>")
25 );
26
27 let coin = login.coin().await?;
28 println!("硬币余额: {:.2}", coin.money);
29
30 match login.daily_reward().await {
31 Ok(reward) => println!(
32 "每日奖励: login={} watch={} coins={} share={}",
33 reward.login, reward.watch, reward.coins, reward.share
34 ),
35 Err(err) if err.is_risk_control() => {
36 println!("每日奖励: 当前请求被风控拦截,已跳过 ({err})");
37 }
38 Err(err) => return Err(err),
39 }
40
41 let vip = login.vip_info().await?;
42 println!(
43 "VIP: active={} type={} status={}",
44 vip.is_active(),
45 vip.vip_type,
46 vip.vip_status
47 );
48
49 Ok(())
50}