Skip to content
Snippets Groups Projects
Commit 92a1c6f3 authored by Anton's avatar Anton
Browse files

Lab 4: use request.get_json() instead of request.form

parent e32a4aed
Branches
Tags
No related merge requests found
No preview for this file type
...@@ -75,7 +75,8 @@ def validate_ws(data): ...@@ -75,7 +75,8 @@ def validate_ws(data):
return False return False
def validate_request(): def validate_request():
data = request.args.to_dict() if request.method == "GET" else request.form.to_dict() data = request.args.to_dict() if request.method == "GET" else request.get_json()
print("DATA", data)
user_identifier = data.get("user_identifier") user_identifier = data.get("user_identifier")
hashed_data = request.headers["Authorization"] hashed_data = request.headers["Authorization"]
print("normal req hashed data", hashed_data) print("normal req hashed data", hashed_data)
...@@ -123,8 +124,9 @@ def root(): ...@@ -123,8 +124,9 @@ def root():
@app.route("/sign-in", methods=["POST"]) @app.route("/sign-in", methods=["POST"])
def sign_in(): def sign_in():
email = request.form["email"] data = request.get_json()
password = request.form["password"] email = data["email"]
password = data["password"]
if validate_user(email, password): if validate_user(email, password):
...@@ -154,7 +156,7 @@ def sign_in(): ...@@ -154,7 +156,7 @@ def sign_in():
@app.route("/sign-up", methods=["POST"]) @app.route("/sign-up", methods=["POST"])
def sign_up(): def sign_up():
user_data = request.form user_data = request.get_json()
if not is_signup_form_valid(user_data): if not is_signup_form_valid(user_data):
return create_response( return create_response(
success=False, message="One or more fields are incorrect" success=False, message="One or more fields are incorrect"
...@@ -197,14 +199,15 @@ def change_password(): ...@@ -197,14 +199,15 @@ def change_password():
if is_valid: if is_valid:
email = signed_in_user[0] email = signed_in_user[0]
hashed_pw = signed_in_user[1] hashed_pw = signed_in_user[1]
if validate_password(request.form["oldPassword"], hashed_pw): data = request.get_json()
if validate_password(data["oldPassword"], hashed_pw):
if len(request.form["newPassword"]) < 6: if len(data["newPassword"]) < 6:
return create_response( return create_response(
success=False, message="Password must be at least 6 characters" success=False, message="Password must be at least 6 characters"
) )
hashed_password = hash_password(request.form["newPassword"]) hashed_password = hash_password(data["newPassword"])
database_helper.set_password(email, hashed_password) database_helper.set_password(email, hashed_password)
return create_response(success=True, message="Password has been changed") return create_response(success=True, message="Password has been changed")
...@@ -311,15 +314,16 @@ def post_message(): ...@@ -311,15 +314,16 @@ def post_message():
is_valid, current_user = validate_request() is_valid, current_user = validate_request()
if is_valid: if is_valid:
sender_email = current_user[0] sender_email = current_user[0]
receiver_email = request.form["email"] data = request.get_json()
receiver_email = data["email"]
receiver_email = receiver_email if receiver_email else sender_email receiver_email = receiver_email if receiver_email else sender_email
msg_id = uuid.uuid4().hex msg_id = uuid.uuid4().hex
database_helper.add_message( database_helper.add_message(
msg_id=msg_id, msg_id=msg_id,
to_email=receiver_email, to_email=receiver_email,
from_email=sender_email, from_email=sender_email,
message=request.form["message"], message=data["message"],
location=request.form["location"], location=data["location"],
) )
# push update to receiver # push update to receiver
if receiver_email in active_sockets: if receiver_email in active_sockets:
......
...@@ -84,13 +84,14 @@ ...@@ -84,13 +84,14 @@
</div> </div>
</div> </div>
<!-- Modal for error messages --> <!-- Modal for error messages -->
<div id="modal" class="modal" > <div id="modal" class="modal" >
<div class="modal-content"> <div class="modal-content">
<span class="close">&times;</span> <span class="close">&times;</span>
<div class="modal-text"> <div class="modal-text">
<p id="err-msg">Some text in the Modal..</p> <p id="err-msg"></p>
</div> </div>
</div> </div>
...@@ -217,13 +218,18 @@ ...@@ -217,13 +218,18 @@
</div> </div>
</div> </div>
<!-- Modal for error messages -->
<div id="modal" class="modal"> <!-- Modal for error messages -->
<div class="modal-content"> <div id="modal" class="modal" >
<span class="close">&times;</span>
<p id="err-msg">Some text in the Modal..</p> <div class="modal-content">
<span class="close">&times;</span>
<div class="modal-text">
<p id="err-msg"></p>
</div> </div>
</div> </div>
</div>
</div> </div>
</div> </div>
......
window.onload = function () { window.onload = function () {
displayView();git displayView();
}; };
displayView = function () { displayView = function () {
...@@ -463,15 +463,8 @@ function xmlRequest(url, callback, params, token = null, requestType) { ...@@ -463,15 +463,8 @@ function xmlRequest(url, callback, params, token = null, requestType) {
if (requestType === "GET") { if (requestType === "GET") {
xhttp.send(); xhttp.send();
} else { } else {
// sending params as form -> loop through params and assemble string xhttp.setRequestHeader("Content-type", "application/json");
formattedParams = ""; xhttp.send(JSON.stringify(params));
for (var key in params) {
if (params.hasOwnProperty(key)) {
formattedParams += "&" + key + "=" + params[key];
}
}
xhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xhttp.send(formattedParams);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment