Skip to content

Commit c75f0ea

Browse files
committed
Uncommented @after_reqeust function to update last API key usage in Redis.
1 parent 2f2398a commit c75f0ea

File tree

1 file changed

+15
-17
lines changed

1 file changed

+15
-17
lines changed

src/server/_security.py

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,15 @@
44
from typing import Optional, cast
55
from uuid import uuid4
66

7-
from flask import Response, g
7+
from flask import Response, g, request
88
from flask_limiter import Limiter
99
from flask_limiter.util import get_remote_address
1010
from werkzeug.local import LocalProxy
1111
import redis
1212

13-
from ._common import app, request
13+
from ._common import app
1414
from ._config import (API_KEY_REQUIRED_STARTING_AT, RATELIMIT_STORAGE_URL,
15-
URL_PREFIX)
15+
URL_PREFIX, REDIS_HOST)
1616
from ._exceptions import MissingAPIKeyException, UnAuthenticatedException
1717
from .admin.models import User, UserRole
1818
# from ._logger import get_structured_logger
@@ -178,17 +178,15 @@ def _no_rate_limit() -> bool:
178178
return user is not None and user.registered # type: ignore
179179

180180

181-
# TODO: fix function below
182-
183-
# @app.after_request
184-
# def update_key_last_time_used(response):
185-
# if _is_public_route():
186-
# return response
187-
# try:
188-
# r = redis.Redis(host="delphi_redis_instance")
189-
# api_key = g.user.api_key
190-
# r.set(f"LAST_USED/{api_key}", datetime.strftime(datetime.now(), "%Y-%m-%d"))
191-
# except Exception as e:
192-
# print(e) # TODO: should be handled properly
193-
# finally:
194-
# return response
181+
@app.after_request
182+
def update_key_last_time_used(response):
183+
if _is_public_route():
184+
return response
185+
try:
186+
r = redis.Redis(host=REDIS_HOST)
187+
api_key = g.user.api_key
188+
r.set(f"LAST_USED/{api_key}", datetime.strftime(datetime.now(), "%Y-%m-%d"))
189+
except Exception as e:
190+
print(e) # TODO: should be handled properly
191+
finally:
192+
return response

0 commit comments

Comments
 (0)