use reqwest::Method;
use serde_json::{Value, json};
use crate::request::{request, CRYPTO_WEAPI, USER_AGENT_MOBILE};
pub async fn get_tasks() ->Result<Value, Box<dyn std::error::Error>> {
let url = "https://music.163.com/weapi/nmusician/workbench/mission/stage/list";
let data = json!({});
let option = json!({
"crypto": CRYPTO_WEAPI,
"ua": USER_AGENT_MOBILE,
"cookie": {
}
});
request(Method::POST, url, data, option).await
}
pub async fn get_cloudbean_info() ->Result<Value, Box<dyn std::error::Error>> {
let url = "https://music.163.com/weapi/cloudbean/get";
let data = json!({});
let option = json!({
"crypto": CRYPTO_WEAPI,
"ua": USER_AGENT_MOBILE,
"cookie": {
}
});
request(Method::POST, url, data, option).await
}
pub async fn obtain_cloudbean(mission_id: &str, period: &str)->Result<Value, Box<dyn std::error::Error>>{
let url = "https://music.163.com/weapi/nmusician/workbench/mission/reward/obtain/new";
let data = json!({
"period": period,
"userMissionId": mission_id,
});
let option = json!({
"crypto": CRYPTO_WEAPI,
"ua": USER_AGENT_MOBILE,
"cookie": {
}
});
request(Method::POST, url, data, option).await
}