diff --git a/server/blueprints/battlesnake.py b/server/blueprints/battlesnake.py index c2681aa..e03df7a 100644 --- a/server/blueprints/battlesnake.py +++ b/server/blueprints/battlesnake.py @@ -3,6 +3,7 @@ import json, time, os from quart import Blueprint, request, jsonify +from quart_common.web.decorators import require_user_agent from quart_common.web.logger import await_log from server.database import StorageLoader from snakes import DEFAULT_SNAKE_CONFIG @@ -44,6 +45,7 @@ def create_battlesnake_blueprint(server:'Server') -> Blueprint: return snake_json @blueprint.post('/start') + @require_user_agent("BattlesnakeEngine", abort_code=404) async def on_start(): server.metrics_collector.record_http_request('start') await server.game_runtime.prune_stale_games() @@ -54,6 +56,7 @@ def create_battlesnake_blueprint(server:'Server') -> Blueprint: return 'ok' @blueprint.post('/move') + @require_user_agent("BattlesnakeEngine", abort_code=404) async def on_move(): server.metrics_collector.record_http_request('move') game_state = await request.get_json() @@ -71,6 +74,7 @@ def create_battlesnake_blueprint(server:'Server') -> Blueprint: return {'move': next_move} @blueprint.post('/end') + @require_user_agent("BattlesnakeEngine", abort_code=404) async def on_end(): server.metrics_collector.record_http_request('end') await server.game_runtime.prune_stale_games() @@ -98,9 +102,9 @@ def create_battlesnake_blueprint(server:'Server') -> Blueprint: await server.metrics_collector.record_game_end(game_state) return 'ok' - @blueprint.get('/cleanup') - async def cleanup(): - results = server._cleanup_database() - return jsonify(data=json.loads(results), status=200) + # @blueprint.get('/cleanup') + # async def cleanup(): + # results = server._cleanup_database() + # return jsonify(data=json.loads(results), status=200) return blueprint