From 3f8f9f708f00df453b7dcdaf03fcce5034d285aa Mon Sep 17 00:00:00 2001 From: katboi01 Date: Thu, 23 Jan 2025 00:17:38 +0100 Subject: [PATCH] added new endpoint --- app.py | 5 +++-- modules/proxy.py | 23 ++++++++++++++++++++++- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/app.py b/app.py index 412a3a2..c21dd29 100644 --- a/app.py +++ b/app.py @@ -4,7 +4,7 @@ from flask_restful import Api from modules.KF3.database import Database as KF3DB from modules.Kingdom.database import Database as KFKDB from modules.Archive.database import Database as KFADB -from modules.proxy import DMMProxy +from modules.proxy import FilelistProxy, LaunchProxy app = Flask(__name__) app.config['JSON_AS_ASCII'] = False @@ -16,7 +16,8 @@ KF3DB(api) KFKDB(api) KFADB(api, "Archive", "/home/pi/python/Katbots/JapariArchive/database.db") KFADB(api, "ArchiveOld", "/home/pi/python/Katbots/JapariArchive/databaseOld.db") -api.add_resource(DMMProxy, "/proxy") +api.add_resource(LaunchProxy, "/DMM/launch") +api.add_resource(FilelistProxy, "/DMM/filelist") if __name__ == '__main__': app.run(host='127.0.0.1', port=8080, debug=True) \ No newline at end of file diff --git a/modules/proxy.py b/modules/proxy.py index 7c83470..78631fc 100644 --- a/modules/proxy.py +++ b/modules/proxy.py @@ -3,7 +3,7 @@ from flask import current_app as app, request import requests -class DMMProxy(Resource): +class LaunchProxy(Resource): def post(self): url = "https://apidgp-gameplayer.games.dmm.com/v5/launch/cl" headers = {"User-Agent": "DMMGamePlayer5-Win/5.3.12 Electron/32.1.0", @@ -11,6 +11,27 @@ class DMMProxy(Resource): "Client-version": "5.3.12", "Content-Type": "application/json"} + with requests.Session() as session: + requests.utils.add_dict_to_cookiejar(session.cookies, request.cookies) + response = session.post(url, headers=headers, data=request.data) + + result = app.response_class( + response=response.text, + status=200, + mimetype='application/json' + ) + result.headers.add("Access-Control-Allow-Origin", "*") + + return result + +class FilelistProxy(Resource): + def post(self): + url = "https://apidgp-gameplayer.games.dmm.com/v5/r2/filelist/cl" + headers = {"User-Agent": "DMMGamePlayer5-Win/5.3.12 Electron/32.1.0", + "Client-App": "DMMGamePlayer5", + "Client-version": "5.3.12", + "Content-Type": "application/json"} + with requests.Session() as session: requests.utils.add_dict_to_cookiejar(session.cookies, request.cookies) response = session.post(url, headers=headers, data=request.data)