Skip to content

Commit 8c2f4cb

Browse files
committed
Return HTTP code 400 if body is required but not provided
1 parent a2fc0ce commit 8c2f4cb

File tree

2 files changed

+20
-4
lines changed

2 files changed

+20
-4
lines changed

src/api/controllers/projectController.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,8 @@ def update_project(id):
105105
404:
106106
description: Project not found
107107
"""
108+
if not request.get_json():
109+
return "Failed to update project.", 400
108110
if 'id' in request.get_json():
109111
return "Failed to update project. Request body can not specify project's id.", 501
110112

@@ -244,6 +246,8 @@ def create_project_link(project_id):
244246
400:
245247
description: Failed to create project link
246248
"""
249+
if not request.get_json():
250+
return "Failed to create project link.", 400
247251
if 'project_id' in request.get_json():
248252
return "Failed to create project link. Request body can not specify link's project_id.", 400
249253

@@ -290,6 +294,8 @@ def update_project_link(project_id, link_id):
290294
404:
291295
description: Project link not found
292296
"""
297+
if not request.get_json():
298+
return "Failed to update project link.", 400
293299
if 'project_id' in request.get_json():
294300
return "Failed to update project link. Request body can not specify link's project_id.", 400
295301
elif 'link_id' in request.get_json():
@@ -410,6 +416,8 @@ def create_project_feedback(project_id):
410416
400:
411417
description: Failed to create project feedback
412418
"""
419+
if not request.get_json():
420+
return "Failed to create project feedback.", 400
413421
if 'project_id' in request.get_json():
414422
return "Failed to create feedback. Request body can not specify feedback's project_id.", 400
415423

src/api/controllers/userController.py

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,8 @@ def update_user(id):
114114
404:
115115
description: User not found
116116
"""
117+
if not request.get_json():
118+
return "Failed to update user.", 400
117119
if 'id' in request.get_json():
118120
return "Failed to update user. Request body can not specify user's id.", 501
119121

@@ -125,12 +127,12 @@ def update_user(id):
125127
if not hasattr(user, key):
126128
return "Failed to update user.", 400
127129

128-
for key, value in request.get_json().items():
129-
setattr(user, key, value)
130+
for key, value in request.get_json().items():
131+
setattr(user, key, value)
130132

131-
db.session.commit()
133+
db.session.commit()
132134

133-
return jsonify(user.as_dict()), 200
135+
return jsonify(user.as_dict()), 200
134136

135137
@app.route("/users/<id>", methods=['GET'])
136138
def get_user(id):
@@ -257,6 +259,8 @@ def create_user_link(user_id):
257259
400:
258260
description: Failed to create user link
259261
"""
262+
if not request.get_json():
263+
return "Failed to create user link.", 400
260264
if 'user_id' in request.get_json():
261265
return "Failed to create user link. Request body can not specify link's user_id.", 400
262266

@@ -303,6 +307,8 @@ def update_user_link(user_id, link_id):
303307
404:
304308
description: User link not found
305309
"""
310+
if not request.get_json():
311+
return "Failed to update user link.", 400
306312
if 'user_id' in request.get_json():
307313
return "Failed to update user link. Request body can not specify link's user_id.", 400
308314
elif 'link_id' in request.get_json():
@@ -423,6 +429,8 @@ def create_user_feedback(user_id):
423429
400:
424430
description: Failed to create user feedback
425431
"""
432+
if not request.get_json():
433+
return "Failed to create user feedback.", 400
426434
if 'user_id' in request.get_json():
427435
return "Failed to create feedback. Request body can not specify feedback's user_id.", 400
428436

0 commit comments

Comments
 (0)