Skip to main content

ncm_api_rs/api/
search_suggest.rs

1use super::Query;
2use crate::error::Result;
3/// 搜索建议
4/// 对应 Node.js module/search_suggest.js
5use crate::request::{ApiClient, ApiResponse, CryptoType};
6use serde_json::json;
7
8impl ApiClient {
9    /// 搜索建议
10    /// 对应 /search/suggest
11    pub async fn search_suggest(&self, query: &Query) -> Result<ApiResponse> {
12        let suggest_type = if query.get_or("type", "") == "mobile" {
13            "keyword"
14        } else {
15            "web"
16        };
17        let data = json!({
18            "s": query.get_or("keywords", "")
19        });
20        self.request(
21            &format!("/api/search/suggest/{}", suggest_type),
22            data,
23            query.to_option(CryptoType::Weapi),
24        )
25        .await
26    }
27}