bpi_rs/login/member_center/
reward.rs1use crate::{ BilibiliRequest, BpiClient, BpiError, BpiResponse };
6use serde::{ Deserialize, Serialize };
7
8#[derive(Debug, Clone, Serialize, Deserialize)]
10pub struct DailyReward {
11 pub login: bool,
15 pub watch: bool,
19 pub coins: u32,
22 pub share: bool,
26 pub email: bool,
30 pub tel: bool,
34 pub safe_question: bool,
38 pub identify_card: bool,
42}
43
44impl BpiClient {
45 pub async fn member_center_daily_reward(&self) -> Result<BpiResponse<DailyReward>, BpiError> {
47 self
48 .get("https://api.bilibili.com/x/member/web/exp/reward")
49 .header("Referer", "")
50 .send_bpi("查询每日奖励状态").await
51 }
52}
53
54#[cfg(test)]
55mod tests {
56 use super::*;
57
58 #[tokio::test]
59 async fn test_get_daily_reward() -> Result<(), BpiError> {
60 let bpi = BpiClient::new();
61
62 let result = bpi.member_center_daily_reward().await?;
63 println!("{:?}", result);
64 Ok(())
65 }
66}