Skip to main content

ncm_api_rs/api/
user_cloud_detail.rs

1use super::Query;
2use crate::error::Result;
3/// 用户云盘歌曲详情
4/// 对应 Node.js module/user_cloud_detail.js
5use crate::request::{ApiClient, ApiResponse, CryptoType};
6use serde_json::json;
7
8impl ApiClient {
9    /// 用户云盘歌曲详情
10    /// 对应 /user/cloud/detail
11    pub async fn user_cloud_detail(&self, query: &Query) -> Result<ApiResponse> {
12        let ids: Vec<String> = query
13            .get_or("id", "")
14            .replace(' ', "")
15            .split(',')
16            .map(|s| s.to_string())
17            .filter(|s| !s.is_empty())
18            .collect();
19        let data = json!({
20            "songIds": ids
21        });
22        self.request(
23            "/api/v1/cloud/get/byids",
24            data,
25            query.to_option(CryptoType::Weapi),
26        )
27        .await
28    }
29}