-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathapi.py
More file actions
124 lines (101 loc) · 3.32 KB
/
api.py
File metadata and controls
124 lines (101 loc) · 3.32 KB
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
from flask import *
from DB import *
import blogdb as blog
api = Flask(__name__)
@api.route('/', methods=['GET'])
def data():
try:
if request.args == {}:
return jsonify(listAllAuthData())
elif 'username' in request.args:
return jsonify(selectiveUsername(request.args['username']))
except Exception as err:
return str(err)
@api.route('/createuser', methods=['POST'])
def addUsers():
try:
if request.method == 'POST':
username = request.args['username']
password = request.args['password']
try:
return jsonify(addUser(username, password))
except:
abort (404)
else:
return 'sorry'
except Exception as err:
return str(err)
@api.route('/addsite', methods=['POST'])
def addsite():
try:
username = request.args['username']
sitename = request.args['sitename']
email = request.args['email']
password = request.args['password']
siteusername = request.args['siteusrname']
try:
addSite(username, sitename, email, password, siteusername)
return jsonify(fetchAllUserdata(username))
except Exception as excep:
return str(excep)
except Exception as er:
return str(er)
@api.route('/sites', methods=['GET'])
def sites():
try:
if request.args == {}:
return 'not enough arguments'
else:
return jsonify(convertUserDataToJson(request.args['username']))
except Exception as er:
return str(er)
@api.route('/delsite', methods=['DELETE'])
def delsite():
try:
if request.method == 'DELETE':
try:
username = request.args['username']
site = request.args['site']
deletesite(username, site)
return jsonify(convertUserDataToJson(request.args['username']))
except Exception as ex:
return str(ex)
except Exception as ex:
return str(ex)
@api.route('/delete', methods=['DELETE'])
def deleteuser():
try:
if request.method == 'DELETE':
try:
username = request.args['username']
deleteUser(username)
return jsonify(convertUserDataToJson(request.args['username']))
except Exception as ex:
return str(ex)
except Exception as ex:
return str(ex)
@api.route('/blogs/', methods = ['GET', 'POST'])
def blogs():
try:
if request.method == 'GET':
if 'user' in request.headers:
return jsonify(blog.readUserDb(request.headers['user']))
else:
return jsonify(blog.readDb())
elif request.method == 'POST':
user = request.json['user']
title = request.json['title']
date = request.json['date']
body = request.json['body']
blog.addPost(
user,title, date, body
)
return jsonify({
'response':200,
'operation':'success',
'body':blog.readDb()
})
except Exception as ex:
return str(ex)
if __name__ == '__main__':
api.run(debug=True, host = '0.0.0.0', port=8000)