mirror of
https://git.ethanthesleepy.one/ethanaobrien/ew
synced 2025-10-08 16:37:20 +08:00
Add endpoint to set server time
This commit is contained in:
@@ -1,7 +1,8 @@
|
||||
use json::{array, object, JsonValue};
|
||||
use actix_web::{
|
||||
HttpResponse,
|
||||
http::header::{HeaderValue, HeaderMap}
|
||||
http::header::{HeaderValue, HeaderMap},
|
||||
HttpRequest
|
||||
};
|
||||
use std::time::{SystemTime, UNIX_EPOCH};
|
||||
use base64::{Engine as _, engine::general_purpose};
|
||||
@@ -79,9 +80,27 @@ pub fn timestamp_since_midnight() -> u64 {
|
||||
rv
|
||||
}
|
||||
|
||||
pub fn send(mut data: JsonValue) -> HttpResponse {
|
||||
//println!("{}", json::stringify(data.clone()));
|
||||
fn set_time(data: &mut JsonValue, req: HttpRequest) {
|
||||
data["server_time"] = 1711741114.into();
|
||||
let blank_header = HeaderValue::from_static("");
|
||||
let uid = headers.get("aoharu-user-id").unwrap_or(&blank_header).to_str().unwrap_or("").parse<i64>().unwrap_or(0);
|
||||
if uid == 0 {
|
||||
return;
|
||||
}
|
||||
let server_data = userdata::get_server_data(get_login_token(uid));
|
||||
|
||||
if server_data["timestamp"].as_i64().is_ok() {
|
||||
if server_data["timestamp"].as_i64().unwrap() == 0 {
|
||||
data["server_time"] = global::timestamp().into();
|
||||
return;
|
||||
}
|
||||
data["server_time"] = server_data["timestamp"].clone();
|
||||
}
|
||||
}
|
||||
|
||||
pub fn send(mut data: JsonValue, req: HttpRequest) -> HttpResponse {
|
||||
//println!("{}", json::stringify(data.clone()));
|
||||
set_time(&data, req)
|
||||
|
||||
let encrypted = encryption::encrypt_packet(&json::stringify(data)).unwrap();
|
||||
let resp = encrypted.into_bytes();
|
||||
@@ -89,8 +108,8 @@ pub fn send(mut data: JsonValue) -> HttpResponse {
|
||||
HttpResponse::Ok().body(resp)
|
||||
}
|
||||
|
||||
pub fn error_resp() -> HttpResponse {
|
||||
send(object!{})
|
||||
pub fn error_resp(req: HttpRequest) -> HttpResponse {
|
||||
send(object!{}, req)
|
||||
}
|
||||
|
||||
pub fn start_login_bonus(id: i64, bonus: &mut JsonValue) -> bool {
|
||||
|
Reference in New Issue
Block a user