This commit is contained in:
@@ -1,10 +1,11 @@
|
||||
#!/usr/bin/env python3
|
||||
import datetime
|
||||
|
||||
from flask_jwt_extended import create_access_token, jwt_required, get_jwt_identity
|
||||
import uuid
|
||||
|
||||
from flask_restful import Resource
|
||||
from flask import request, current_app, abort
|
||||
from flask import request, current_app, abort, request
|
||||
|
||||
from fred import flaskred
|
||||
from config import ENCODED_SECRET_KEY
|
||||
from schemas import UserSchema, ListSchema, TrackSchema
|
||||
from aes_encrypt import EncryptedUserRedis
|
||||
@@ -38,8 +39,32 @@ class LoginApi(Resource):
|
||||
current_app.logger.warning(e)
|
||||
abort(417, INVALID_JSON_SCHEMA_MSG)
|
||||
|
||||
self.encryptor.store(userobj)
|
||||
self.encryptor.store(body)
|
||||
|
||||
expires = datetime.timedelta(days=7)
|
||||
access_token = create_access_token(identity=str(userobj['name']), expires_delta=expires)
|
||||
return {'token': access_token}, 200
|
||||
token = str(uuid.uuid4())
|
||||
|
||||
flaskred.set(token, userobj['name'].encode('UTF-8'))
|
||||
|
||||
return {
|
||||
'token': token
|
||||
}, 200
|
||||
|
||||
|
||||
class LogoffApi(Resource):
|
||||
"""
|
||||
See: https://swagger.kmlabz.com/?urls.primaryName=onSpot%20Backend#/backend/logoff
|
||||
"""
|
||||
|
||||
def delelete(self):
|
||||
flaskred.delete(flaskred.get(request.headers.get('Authorization')).decode('UTF-8'))
|
||||
flaskred.delete(request.headers.get('Authorization'))
|
||||
return 204
|
||||
|
||||
|
||||
class MeApi(Resource):
|
||||
"""
|
||||
See: https://swagger.kmlabz.com/?urls.primaryName=onSpot%20Backend#/backend/currentUser
|
||||
"""
|
||||
|
||||
def get(self):
|
||||
return {"name": flaskred.get(request.headers.get('Authorization')).decode('UTF-8')}, 200
|
||||
|
||||
Reference in New Issue
Block a user