Spaces:
Paused
Paused
Upload main.rs
Browse files- src/main.rs +9 -7
src/main.rs
CHANGED
|
@@ -1109,7 +1109,7 @@ async fn login(Json(req): Json<LoginReq>) -> impl IntoResponse {
|
|
| 1109 |
.build()
|
| 1110 |
.unwrap();
|
| 1111 |
|
| 1112 |
-
let ud = match gw_light_call(&client, "deezer.getUserData", "null", json!({})).await {
|
| 1113 |
Ok(v) => v,
|
| 1114 |
Err(e) => return json_error(StatusCode::BAD_GATEWAY, e),
|
| 1115 |
};
|
|
@@ -1126,6 +1126,7 @@ async fn login(Json(req): Json<LoginReq>) -> impl IntoResponse {
|
|
| 1126 |
|
| 1127 |
if let Err(e) = gw_light_call(
|
| 1128 |
&client,
|
|
|
|
| 1129 |
"user.checkCredentials",
|
| 1130 |
&token,
|
| 1131 |
json!({
|
|
@@ -1140,7 +1141,7 @@ async fn login(Json(req): Json<LoginReq>) -> impl IntoResponse {
|
|
| 1140 |
}
|
| 1141 |
|
| 1142 |
let mut arl: String = String::new();
|
| 1143 |
-
if let Ok(v) = gw_light_call(&client, "user.getArl", &token, json!({})).await {
|
| 1144 |
arl = v.as_str().unwrap_or("").to_string();
|
| 1145 |
}
|
| 1146 |
|
|
@@ -1385,7 +1386,7 @@ async fn pair_complete(State(state): State<AppState>, Form(f): Form<PairComplete
|
|
| 1385 |
let url_deezer = "https://www.deezer.com".parse::<Url>().unwrap();
|
| 1386 |
jar.add_cookie_str("comeback=1; Domain=.deezer.com", &url_deezer);
|
| 1387 |
let client = reqwest::Client::builder()
|
| 1388 |
-
.cookie_provider(jar)
|
| 1389 |
.timeout(std::time::Duration::from_secs(20))
|
| 1390 |
.build()
|
| 1391 |
.unwrap();
|
|
@@ -1396,7 +1397,7 @@ async fn pair_complete(State(state): State<AppState>, Form(f): Form<PairComplete
|
|
| 1396 |
let mut arl_out: Option<String> = None;
|
| 1397 |
let mut gw_token: Option<String> = None;
|
| 1398 |
|
| 1399 |
-
let ud = match gw_light_call(&client, "deezer.getUserData", "null", json!({})).await {
|
| 1400 |
Ok(v) => v,
|
| 1401 |
Err(e) => {
|
| 1402 |
let mut map = state.pair.write().await;
|
|
@@ -1425,6 +1426,7 @@ async fn pair_complete(State(state): State<AppState>, Form(f): Form<PairComplete
|
|
| 1425 |
|
| 1426 |
if let Err(e) = gw_light_call(
|
| 1427 |
&client,
|
|
|
|
| 1428 |
"user.checkCredentials",
|
| 1429 |
&token,
|
| 1430 |
json!({
|
|
@@ -1443,7 +1445,7 @@ async fn pair_complete(State(state): State<AppState>, Form(f): Form<PairComplete
|
|
| 1443 |
.into_response();
|
| 1444 |
}
|
| 1445 |
|
| 1446 |
-
if let Ok(v) = gw_light_call(&client, "user.getArl", &token, json!({})).await {
|
| 1447 |
if let Some(s) = v.as_str() {
|
| 1448 |
if s.len() > 20 {
|
| 1449 |
arl_out = Some(s.to_string());
|
|
@@ -1634,7 +1636,7 @@ async fn oauth_arl(Json(req): Json<OauthArlReq>) -> impl IntoResponse {
|
|
| 1634 |
let mut ud: Option<serde_json::Value> = None;
|
| 1635 |
let mut ud_err: Option<String> = None;
|
| 1636 |
for attempt in 0..2 {
|
| 1637 |
-
match gw_light_call(&client, "deezer.getUserData", "null", json!({})).await {
|
| 1638 |
Ok(v) => {
|
| 1639 |
ud = Some(v);
|
| 1640 |
break;
|
|
@@ -1668,7 +1670,7 @@ async fn oauth_arl(Json(req): Json<OauthArlReq>) -> impl IntoResponse {
|
|
| 1668 |
return json_error(StatusCode::SERVICE_UNAVAILABLE, "no checkForm");
|
| 1669 |
}
|
| 1670 |
|
| 1671 |
-
let arl_v = match gw_light_call(&client, "user.getArl", &check_form, json!({})).await {
|
| 1672 |
Ok(v) => v,
|
| 1673 |
Err(e) => return json_error(StatusCode::SERVICE_UNAVAILABLE, e),
|
| 1674 |
};
|
|
|
|
| 1109 |
.build()
|
| 1110 |
.unwrap();
|
| 1111 |
|
| 1112 |
+
let ud = match gw_light_call(&client, &jar, "deezer.getUserData", "null", json!({})).await {
|
| 1113 |
Ok(v) => v,
|
| 1114 |
Err(e) => return json_error(StatusCode::BAD_GATEWAY, e),
|
| 1115 |
};
|
|
|
|
| 1126 |
|
| 1127 |
if let Err(e) = gw_light_call(
|
| 1128 |
&client,
|
| 1129 |
+
&jar,
|
| 1130 |
"user.checkCredentials",
|
| 1131 |
&token,
|
| 1132 |
json!({
|
|
|
|
| 1141 |
}
|
| 1142 |
|
| 1143 |
let mut arl: String = String::new();
|
| 1144 |
+
if let Ok(v) = gw_light_call(&client, &jar, "user.getArl", &token, json!({})).await {
|
| 1145 |
arl = v.as_str().unwrap_or("").to_string();
|
| 1146 |
}
|
| 1147 |
|
|
|
|
| 1386 |
let url_deezer = "https://www.deezer.com".parse::<Url>().unwrap();
|
| 1387 |
jar.add_cookie_str("comeback=1; Domain=.deezer.com", &url_deezer);
|
| 1388 |
let client = reqwest::Client::builder()
|
| 1389 |
+
.cookie_provider(jar.clone())
|
| 1390 |
.timeout(std::time::Duration::from_secs(20))
|
| 1391 |
.build()
|
| 1392 |
.unwrap();
|
|
|
|
| 1397 |
let mut arl_out: Option<String> = None;
|
| 1398 |
let mut gw_token: Option<String> = None;
|
| 1399 |
|
| 1400 |
+
let ud = match gw_light_call(&client, &jar, "deezer.getUserData", "null", json!({})).await {
|
| 1401 |
Ok(v) => v,
|
| 1402 |
Err(e) => {
|
| 1403 |
let mut map = state.pair.write().await;
|
|
|
|
| 1426 |
|
| 1427 |
if let Err(e) = gw_light_call(
|
| 1428 |
&client,
|
| 1429 |
+
&jar,
|
| 1430 |
"user.checkCredentials",
|
| 1431 |
&token,
|
| 1432 |
json!({
|
|
|
|
| 1445 |
.into_response();
|
| 1446 |
}
|
| 1447 |
|
| 1448 |
+
if let Ok(v) = gw_light_call(&client, &jar, "user.getArl", &token, json!({})).await {
|
| 1449 |
if let Some(s) = v.as_str() {
|
| 1450 |
if s.len() > 20 {
|
| 1451 |
arl_out = Some(s.to_string());
|
|
|
|
| 1636 |
let mut ud: Option<serde_json::Value> = None;
|
| 1637 |
let mut ud_err: Option<String> = None;
|
| 1638 |
for attempt in 0..2 {
|
| 1639 |
+
match gw_light_call(&client, &jar, "deezer.getUserData", "null", json!({})).await {
|
| 1640 |
Ok(v) => {
|
| 1641 |
ud = Some(v);
|
| 1642 |
break;
|
|
|
|
| 1670 |
return json_error(StatusCode::SERVICE_UNAVAILABLE, "no checkForm");
|
| 1671 |
}
|
| 1672 |
|
| 1673 |
+
let arl_v = match gw_light_call(&client, &jar, "user.getArl", &check_form, json!({})).await {
|
| 1674 |
Ok(v) => v,
|
| 1675 |
Err(e) => return json_error(StatusCode::SERVICE_UNAVAILABLE, e),
|
| 1676 |
};
|