Files

34 lines
993 B
Python

from flask import Blueprint, jsonify, request
from flask_jwt_extended import create_access_token
import pymysql
from config import Config
auth_bp = Blueprint('auth', __name__)
def get_db():
return pymysql.connect(
host=Config.MYSQL_HOST,
user=Config.MYSQL_USER,
password=Config.MYSQL_PASSWORD,
database=Config.MYSQL_DB,
cursorclass=pymysql.cursors.DictCursor
)
#POST — Login et génération du token JWT
@auth_bp.route('/login', methods=['POST'])
def login():
body = request.get_json()
username = body.get('username')
password = body.get('password')
db = get_db()
cursor = db.cursor()
cursor.execute("SELECT * FROM users WHERE username=%s AND password=%s", (username, password))
user = cursor.fetchone()
db.close()
if user:
token = create_access_token(identity=username)
return jsonify({'token': token}), 200
else:
return jsonify({'message': 'Identifiants incorrects'}), 401