from flask_json import as_json from app import db, log from app.api import api_bp as bp from app.auth.logic import basic_auth, token_auth @bp.route("/tokens", methods=["POST"]) @basic_auth.login_required @as_json def get_token(): "renvoie un jeton jwt pour l'utilisateur courant" token = basic_auth.current_user().get_token() log(f"API: giving token to {basic_auth.current_user()}") db.session.commit() return {"token": token} @bp.route("/tokens", methods=["DELETE"]) @token_auth.login_required def revoke_token(): "révoque le jeton de l'utilisateur courant" user = token_auth.current_user() user.revoke_token() db.session.commit() log(f"API: revoking token for {user}") return "", 204