This commit is contained in:
UnitedAirforce
2025-09-25 10:14:42 +08:00
parent 78b8591590
commit 175615587e
4 changed files with 15 additions and 8 deletions
+4 -4
View File
@@ -13,16 +13,16 @@ async def batch_handler(request: Request):
token = data.get("token")
platform = data.get("platform")
if not token:
return HTMLResponse(content=json.dumps({"error": "Token is required"}), status_code=400)
return HTMLResponse(content="Token is required", status_code=400)
if platform not in ["Android", "iOS"]:
return HTMLResponse(content=json.dumps({"error": "Invalid platform"}), status_code=400)
return HTMLResponse(content="Invalid platform", status_code=400)
query = batch_token.select().where(batch_token.c.token == token)
result = await database.fetch_one(query)
if result['expire_at'] < int(time.time()):
return HTMLResponse(content=json.dumps({"error": "Token expired"}), status_code=400)
return HTMLResponse(content="Token expired", status_code=400)
with open(os.path.join('api/config/', 'download_manifest.json'), 'r', encoding='utf-8') as f:
stage_manifest = json.load(f)
@@ -49,6 +49,10 @@ class _HomeScreenState extends State<HomeScreen> {
Future<void> initBatch(String serverUrl, String token) async {
setState(() => _result = "Checking...");
if (serverUrl.endsWith("/")) {
serverUrl = serverUrl.substring(0, serverUrl.length - 1);
}
try {
final url = Uri.parse('$serverUrl/batch');
final payload = {
@@ -71,7 +75,7 @@ class _HomeScreenState extends State<HomeScreen> {
context,
MaterialPageRoute(
builder: (_) => DownloadScreen(
files: data["stage"] ?? {},
files: Map<String, int>.from(data["stage"] ?? {}),
threadCount: data["thread"] ?? 1,
title: "Downloading Stages",
serverUrl: serverUrl,
@@ -83,7 +87,7 @@ class _HomeScreenState extends State<HomeScreen> {
context,
MaterialPageRoute(
builder: (_) => DownloadScreen(
files: data["audio"] ?? {},
files: Map<String, int>.from(data["audio"] ?? {}),
threadCount: data["thread"] ?? 1,
title: "Downloading Music",
serverUrl: serverUrl,
@@ -96,7 +100,10 @@ class _HomeScreenState extends State<HomeScreen> {
);
}
} else {
setState(() => _result = "Server error: ${response.statusCode}");
setState(
() => _result =
"Server error: ${response.statusCode}, ${response.body}",
);
}
} catch (e) {
setState(() => _result = "Request failed: $e");
@@ -1 +1 @@
07e3ccb23568eac4c695ea7c08e5679f3c696ac5
7a8131d9aa79e42356d6df84508d44f230a6df95