/
server_side.py
72 lines (50 loc) · 1.68 KB
/
server_side.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
from flask import Flask
# import logging
from request_handling import create_post_response, create_get_response, create_get_id_response, create_patch_id_response
from create_db import create_db
from authorization import requires_authorization
from flask_cors import CORS
# logging.basicConfig(filename='complete.log', level=logging.DEBUG)
create_db()
app = Flask(__name__)
CORS(app)
@app.route('/')
@requires_authorization
def index():
return 'Wrong way Bud!'
@app.route('/tasks', methods=['POST'])
@requires_authorization
def responding_to_post():
return create_post_response()
@app.route('/tasks', methods=['GET'])
@requires_authorization
def respond_to_get():
return create_get_response()
@app.route('/tasks/<int:quask_num>', methods=['GET'])
@requires_authorization
def respond_to_get_id(quask_num):
return create_get_id_response(quask_num)
@app.route('/tasks/<int:quask_num>', methods=['PATCH'])
@requires_authorization
def respond_to_patch_id(quask_num):
return create_patch_id_response(quask_num)
if __name__ == '__main__':
app.run(debug=True)
'''
POST for Unix
curl -X POST 'http://localhost:5000/tasks' -H 'Content-Type: application/json' -d '{"description": "some value"}'
POST for Win
curl -X POST http://localhost:5000/tasks -H "Content-Type: application/json" -d "{\"description\":\"some value\"}"
GET_ID for Win
curl -X GET http://localhost:5000/tasks/62 -i
GET for Win
curl -X GET http://localhost:5000/tasks
PATCH for Win
curl -X PATCH http://localhost:5000/tasks/1 -i -H "Content-Type: application/json" -d "{\"is_done\":\"1\"}"
LOGIN for WIN
curl -u admin:admin http://localhost:5000/
Env vars
set FLASK_APP=server_side.py
set TODO_USER=admin
set TODO_PASSWORD=admin
'''