当前位置: 首页>>代码示例>>Python>>正文


Python Error.trial_expired方法代码示例

本文整理汇总了Python中error.Error.trial_expired方法的典型用法代码示例。如果您正苦于以下问题:Python Error.trial_expired方法的具体用法?Python Error.trial_expired怎么用?Python Error.trial_expired使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在error.Error的用法示例。


在下文中一共展示了Error.trial_expired方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: __init__

# 需要导入模块: from error import Error [as 别名]
# 或者: from error.Error import trial_expired [as 别名]

#.........这里部分代码省略.........
            store_passwd = store_data["password"]
            store_salt = store_data["salt"]
            store_join_time = datetime.strptime(store_data["join_time"], "%Y-%m-%d %H:%M:%S.%f")
            password = sha512(password + store_salt).hexdigest()
            if password == store_passwd:
                session_id = md5(username + str(datetime.now())).hexdigest()
                # --- check trial expire ---
                delta = datetime.now() - store_join_time
                if delta.days > trial_time:
                    return 402
                # --- end check ---
                self.a.insert("session_id", {session_id: {"username": username, "timestamp": str(datetime.now())}})
                return session_id
            return False
        except (NotFoundException, InvalidRequestException):
            return False

    def _logout(self, session_id):
        try:
            self.a.get("session_id", super_column=session_id)  # check if exist
            self.a.remove("session_id", session_id)
            return True
        except (NotFoundException, InvalidRequestException):
            return False

    def register(self, environ):
        try:
            username = environ["request"]["username"]
            password = environ["request"]["password"]
            phone_number = environ["request"]["phone_number"]
        except KeyError:
            return self.e.bad_request("Hành động này yêu cầu 4 tham số: username, password, phone_number và api_key")
        username = username.strip().lower()
        # check params
        allow_chars = lowercase + "[email protected]"
        for char in username:
            if char not in allow_chars:
                self.e.param_error("Tên đăng nhập chỉ được dùng các ký tự a-z, A-Z và [email protected]")
        if len(password) != 32:
            return self.e.param_error("Mật khẩu phải được mã hóa md5 trước khi gửi lên")

        # ----- check phone_number (dạng 841673450799) -----
        if phone_number != "":
            phone_number = phone_number.replace(" ", "")
            phone_number = "\t" + phone_number
            if phone_number.startswith("\t+"):
                phone_number = phone_number.replace("\t+", "\t")  # remove +
            # normalize
            if phone_number.startswith("\t09"):
                phone_number = phone_number.replace("\t09", "849")
            elif phone_number.startswith("\t01"):
                phone_number = phone_number.replace("\t01", "841")
            else:
                return self.e.param_error("phone_number không hợp lệ")
            if len(phone_number) in (11, 12):
                try:
                    phone_number = int(phone_number)
                except ValueError:  # not int
                    return self.e.param_error("phone_number không hợp lệ")
            else:
                return self.e.param_error("phone_number không hợp lệ")
        # ----- end phone_number check -----
        result = self._register(username, password, phone_number)
        if result is True:
            xml = '<register status_code="201" description="Tài khoản đã được tạo thành công"/>'
            return xml
        else:
            xml = '<register status_code="406" description="Tham số không hợp lệ"/>'
            return xml

    def login(self, environ):
        try:
            username = environ["request"]["username"]
            password = environ["request"]["password"]
        except KeyError:
            return self.e.bad_request("Hành động này yêu cầu 3 tham số: username, password và api_key")

        result = self._login(username, password)
        if result is False:
            xml = '<login status_code="401" description="Tên đăng nhập/mật khẩu không hợp lệ"/>'
            return xml
        elif result == 402:
            return self.e.trial_expired()
        else:
            xml = '<login status_code="202" session_id="%s" description="Đăng nhập thành công"/>' % (result)
            return xml

    def logout(self, environ):
        try:
            session_id = environ["request"]["session_id"]
        except KeyError:
            return self.e.bad_request("Hành động này yêu cầu 2 tham số: session_id và api_key")

        result = self._logout(session_id)
        if result is True:
            xml = '<logout status_code="200" description="Đăng xuất thành công"/>'
            return xml
        else:
            xml = '<logout status_code="401" description="session_id không hợp lệ"/>'
            return xml
开发者ID:AloneRoad,项目名称:MELS,代码行数:104,代码来源:authentication.py


注:本文中的error.Error.trial_expired方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。