Skip to main content

ncm_api_rs/api/
check_music.rs

1use super::Query;
2use crate::error::Result;
3/// 检查音乐是否可用
4/// 对应 Node.js module/check_music.js
5use crate::request::{ApiClient, ApiResponse, CryptoType};
6use serde_json::json;
7
8impl ApiClient {
9    /// 检查音乐是否可用
10    /// 对应 /check/music
11    pub async fn check_music(&self, query: &Query) -> Result<ApiResponse> {
12        let id = query.get_or("id", "0").parse::<i64>().unwrap_or(0);
13        let br = query
14            .get_or("br", "999000")
15            .parse::<i64>()
16            .unwrap_or(999000);
17        let data = json!({
18            "ids": format!("[{}]", id),
19            "br": br
20        });
21        self.request(
22            "/api/song/enhance/player/url",
23            data,
24            query.to_option(CryptoType::Weapi),
25        )
26        .await
27    }
28}