Skip to content

Commit 6b63f45

Browse files
committed
also updated token handling when creating or deleting an endpoint
1 parent a503c0f commit 6b63f45

File tree

1 file changed

+9
-10
lines changed

1 file changed

+9
-10
lines changed

src/api.py

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -323,15 +323,12 @@ async def new_token(endpoint: int,
323323
return fastapi.responses.JSONResponse(status_code=403, content={"message": "This endpoint is suspended."})
324324

325325
if master_token == Bot.config.MASTER_TOKEN:
326-
with open(f"{pathlib.Path(__file__).parent.resolve()}/tokens.json", "r+") as tokens:
327-
token = secrets.token_urlsafe(53)
328-
data = json.load(tokens)
329-
data[f"{endpoint}"] = token
330-
tokens.seek(0)
331-
json.dump(data, tokens)
332-
tokens.truncate()
333-
tokens.close()
334-
return {f"token": token}
326+
token = secrets.token_urlsafe(53)
327+
exists = await astroidapi.surrealdb_handler.TokenHandler.get_token(endpoint)
328+
if exists:
329+
await astroidapi.surrealdb_handler.TokenHandler.update_token(endpoint, token)
330+
else:
331+
await astroidapi.surrealdb_handler.TokenHandler.create_token(endpoint, token)
335332

336333
else:
337334
return fastapi.responses.JSONResponse(status_code=403, content={"message": "The provided token is invalid."})
@@ -635,6 +632,7 @@ async def delete_endpoint(endpoint: int,
635632
if token == data_token or token == Bot.config.MASTER_TOKEN:
636633
try:
637634
await astroidapi.surrealdb_handler.delete(endpoint)
635+
await astroidapi.surrealdb_handler.TokenHandler.delete_token(endpoint)
638636
return fastapi.responses.JSONResponse(status_code=200, content={"message": "Deleted."})
639637
except FileNotFoundError:
640638
return fastapi.responses.JSONResponse(status_code=404,
@@ -647,7 +645,8 @@ async def delete_endpoint(endpoint: int,
647645
except KeyError:
648646
if token == Bot.config.MASTER_TOKEN:
649647
try:
650-
os.remove(f"{pathlib.Path(__file__).parent.resolve()}/endpoints/{endpoint}.json")
648+
await astroidapi.surrealdb_handler.delete(endpoint)
649+
await astroidapi.surrealdb_handler.TokenHandler.delete_token(endpoint)
651650
return fastapi.responses.JSONResponse(status_code=200, content={"message": "Deleted."})
652651
except FileNotFoundError:
653652
return fastapi.responses.JSONResponse(status_code=404,

0 commit comments

Comments
 (0)