Example #1
0
    def post(self):
        """
        Args:
            Username
            Password
        """
        uname = self.get_argument('username')
        passwd = self.get_argument('password')
        session_id = self.get_secure_cookie(COOKIE_NAME)
        if session_id:
            if self.db.query(Session).get(session_id):
                self.set_status(200)
            else:
                self.write("Invalid session, please log in again.")
                self.clear_cookie(COOKIE_NAME)
                self.set_status(401)
            return

        u = User.getByName(self.db, uname)
        if not u:
            self.set_status(410)
            self.write("User does not exist")
            return
        if not u.auth(passwd):
            self.set_status(401)
            self.write("Invalid password")
            return
        session = Session(u)
        if not self.get_secure_cookie(COOKIE_NAME):
            self.set_secure_cookie(COOKIE_NAME, session.id)
            self.db.add(session)
            self.db.commit()
            self.set_status(201)
            return
        self.set_status(200)
Example #2
0
    def post(self):
        """
        Args:
            username
            password
        """

        if self.db.query(User).filter(User.name == self.get_argument('username')).all():
            self.write("User exists")
            self.set_status(200)
            return

        u = User(self.get_argument('username'))
        u.setPass(self.get_argument('password'))
        self.db.add(u)
        session = Session(u)
        if not self.get_secure_cookie(COOKIE_NAME):
            self.set_secure_cookie(COOKIE_NAME, session.id)
        self.db.add(session)
        self.db.commit()
        self.write("OK")
        self.set_status(201)