-
Notifications
You must be signed in to change notification settings - Fork 8
/
Copy pathmain.py
81 lines (66 loc) · 1.65 KB
/
main.py
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
from flask import Flask, jsonify, request
app = Flask(__name__)
user_list = [
{
'username': 'abc',
'password': 'abc'
},
{
'username': '123',
'password': '123'
}
]
@app.route('/')
def helloworld():
return "hello world"
@app.route('/users', methods=['GET'])
def get_users():
return jsonify(user_list)
@app.route('/user', methods=['POST'])
def create_user():
user = request.get_json()
user_check = list(
filter(
lambda x: user.get('username') == x['username'],
user_list
)
)
if not user_check:
user_list.append(user)
return jsonify({
'message': 'user created'
})
else:
return jsonify(
{'message': 'user exist'}
)
@app.route('/user/<username>', methods=['DELETE', 'PUT'])
def delete_user(username):
user_find = None
for user in user_list:
if user['username'] == username:
user_find = user
if not user_find:
return jsonify(
{'message': 'user not found'}
)
if request.method == 'DELETE':
user_list.remove(user_find)
return jsonify(
{'message': 'user deleted'}
)
elif request.method == 'PUT':
# new_passwd = {"password": 'xxxxxxx'}
new_passwd = request.get_json()
user_list.remove(user_find)
user_list.append(
{
'username': username,
'password': new_passwd['password']
}
)
return jsonify(
{'message': 'user password updated'}
)
if __name__ == "__main__":
app.run()