Beispiel #1
0
 def handleCreateSession(self):
     length = self.headers["Content-Length"]
     body = self.rfile.read(int(length)).decode("utf-8")
     parsed_body = parse_qs(body)  #decodes encoded data
     username = parsed_body["username"][0]
     password = parsed_body["password"][0]
     db = NamesDB()
     userFound = db.getOneUser(username)
     if userFound != None:
         verified = bcrypt.verify(password, userFound["encrypted_password"])
         if verified:
             self.session["userID"] = userFound["id"]
             self.send_response(201)
             self.end_headers()
             self.wfile.write(
                 bytes(json.dumps(userFound["first_name"]), "utf-8"))
         else:
             self.handle401()
     else:
         self.handle401()
Beispiel #2
0
    def handleCreateUser(self):
        length = self.headers["Content-Length"]
        body = self.rfile.read(int(length)).decode("utf-8")
        parsed_body = parse_qs(body)  #decodes encoded data
        fname = parsed_body["fname"][0]
        lname = parsed_body["lname"][0]
        email = parsed_body["email"][0]
        password = parsed_body["password"][0]

        # Encrypt the password
        encryptedPassword = bcrypt.hash(password)

        db = NamesDB()
        user = db.getOneUser(email)
        if user == None:
            db.insertUser(fname, lname, email, encryptedPassword)
            self.send_response(201)
            self.end_headers()
        else:
            self.send_response(422)
            self.send_header("Content-Type", "text/html; charset=utf-8")
            self.end_headers()
            self.wfile.write(bytes("Email address already exists", "utf-8"))