Bonjour,
J'essaie de connecter Flask et MySQL, mais je ne récupère pas le status "success" de la création d'utilisateur....Je fais mes test avec POSTMAN, je reçois l'erreur suivante :
Je ne comprends pas de quelle "method" il parle, du POST ????....
Code : Sélectionner tout - Visualiser dans une fenêtre à part {"message": "The method is not allowed for the requested URL."}
Voici le code de "api.py":
J'utilise une procédure stockée pour écrire dans la DB, procédure "spCreateUser", voici son code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 from flask import Flask from flask_restful import Resource, Api, reqparse from flaskext.mysql import MySQL app = Flask(__name__) api = Api(app) class CreateUser(Resource): def Post(self): try: # Parse the arguments parser = reqparse.RequestParser() parser.add_argument('email', type=str, help='Email address to create user') parser.add_argument('password', type=str, help='Password to create user') args = parser.parse_args() _userEmail = args['email'] _userPassword = args['password'] return {'Email': args['email'], 'Password': args['password']} mysql = MySQL() # MySQL configurations app.config['MYSQL_DATABASE_USER'] = 'root' app.config['MYSQL_DATABASE_DB'] = 'itemlistdb' app.config['MYSQL_DATABASE_HOST'] = 'localhost' mysql.init_app(app) conn = mysql.connect() cursor = conn.cursor() cursor.callproc('spCreateUser',(_userEmail,_userPassword)) data = cursor.fetchall() if len(data) is 0: conn.commit() return {'StatusCode':'200','Message': 'User creation success'} else: return {'StatusCode':'1000','Message': str(data[0])} except Exception as e: return {'error': str(e)} api.add_resource(CreateUser, '/CreateUser') if __name__ == '__main__': app.run(debug=True)
Merci d'avance !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 BEGIN if ( select exists (select 1 from tblUser where UserName = p_username) ) THEN select 'Username Exists !!'; ELSE insert into tblUser ( UserName, Password ) values ( p_Username, p_Password ); END IF; END![]()
Partager