Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -2273,39 +2273,30 @@ def serve_html_vk(filename):
|
|
2273 |
logging.debug(f"Received params: fullUrl={fullUrl}")
|
2274 |
logging.debug(f"Received params: vk_app_id={vk_app_id}")
|
2275 |
logging.debug(f"Received params: vk_are_notifications_enabled={vk_are_notifications_enabled}")
|
2276 |
-
|
2277 |
# Преобразуем строку в JSON
|
2278 |
try:
|
2279 |
api_key_apps_vk_dict = json.loads(api_key_apps_vk)
|
2280 |
except json.JSONDecodeError as e:
|
2281 |
logging.error(f"Error decoding JSON: {e}")
|
2282 |
return jsonify({"status": "invalid"}), 200
|
2283 |
-
|
2284 |
logging.debug(f"api_key_apps_vk_dict: {api_key_apps_vk_dict}")
|
2285 |
-
|
2286 |
# Проверка подписи для приложения
|
2287 |
if str(apps_id) not in api_key_apps_vk_dict: # Приводим apps_id к строке
|
2288 |
logging.error("Invalid apps_id")
|
2289 |
return jsonify({"error": "Invalid apps_id"}), 400
|
2290 |
-
|
2291 |
secret = api_key_apps_vk_dict[str(apps_id)] # Приводим apps_id к строке
|
2292 |
logging.debug(f"Using secret: {secret}")
|
2293 |
-
|
2294 |
# Парсим полный URL для получения параметров запроса
|
2295 |
query_params = dict(parse_qsl(urlparse(fullUrl).query, keep_blank_values=True))
|
2296 |
logging.debug(f"Query params for signature check: {query_params}")
|
2297 |
-
|
2298 |
# Проверяем подпись
|
2299 |
if not is_valid(query=query_params, secret=secret):
|
2300 |
logging.error("Invalid signature")
|
2301 |
return jsonify({"error": "Invalid signature"}), 400
|
2302 |
-
|
2303 |
# Если верификация прошла успешно, отдаём файл
|
2304 |
if not filename.endswith('.html'):
|
2305 |
filename += '.html'
|
2306 |
-
|
2307 |
return send_from_directory(HTML_FOLDER_VK, filename)
|
2308 |
-
|
2309 |
except Exception as e:
|
2310 |
logging.error(f"An error occurred: {str(e)}")
|
2311 |
return jsonify({"error": str(e)}), 500
|
|
|
2273 |
logging.debug(f"Received params: fullUrl={fullUrl}")
|
2274 |
logging.debug(f"Received params: vk_app_id={vk_app_id}")
|
2275 |
logging.debug(f"Received params: vk_are_notifications_enabled={vk_are_notifications_enabled}")
|
|
|
2276 |
# Преобразуем строку в JSON
|
2277 |
try:
|
2278 |
api_key_apps_vk_dict = json.loads(api_key_apps_vk)
|
2279 |
except json.JSONDecodeError as e:
|
2280 |
logging.error(f"Error decoding JSON: {e}")
|
2281 |
return jsonify({"status": "invalid"}), 200
|
|
|
2282 |
logging.debug(f"api_key_apps_vk_dict: {api_key_apps_vk_dict}")
|
|
|
2283 |
# Проверка подписи для приложения
|
2284 |
if str(apps_id) not in api_key_apps_vk_dict: # Приводим apps_id к строке
|
2285 |
logging.error("Invalid apps_id")
|
2286 |
return jsonify({"error": "Invalid apps_id"}), 400
|
|
|
2287 |
secret = api_key_apps_vk_dict[str(apps_id)] # Приводим apps_id к строке
|
2288 |
logging.debug(f"Using secret: {secret}")
|
|
|
2289 |
# Парсим полный URL для получения параметров запроса
|
2290 |
query_params = dict(parse_qsl(urlparse(fullUrl).query, keep_blank_values=True))
|
2291 |
logging.debug(f"Query params for signature check: {query_params}")
|
|
|
2292 |
# Проверяем подпись
|
2293 |
if not is_valid(query=query_params, secret=secret):
|
2294 |
logging.error("Invalid signature")
|
2295 |
return jsonify({"error": "Invalid signature"}), 400
|
|
|
2296 |
# Если верификация прошла успешно, отдаём файл
|
2297 |
if not filename.endswith('.html'):
|
2298 |
filename += '.html'
|
|
|
2299 |
return send_from_directory(HTML_FOLDER_VK, filename)
|
|
|
2300 |
except Exception as e:
|
2301 |
logging.error(f"An error occurred: {str(e)}")
|
2302 |
return jsonify({"error": str(e)}), 500
|