Ejemplo n.º 1
0
    def get(self):
        # for k in dir(self.request):
            # if not callable(getattr(self, k)):
                    # print(k, getattr(self.request, k))
        # 登录模式1
        email = self.get_argument('email', '')
        password = self.get_argument('password', '')
        # 登录模式2 Authorization: Basic base64("user:passwd")
        auth_header = self.request.headers.get('Authorization', None)

        if auth_header is not None:
            auth_mode, auth_base64 = auth_header.split(' ', 1)
            assert auth_mode == 'Basic'
            email, password = base64.b64decode(auth_base64).decode('u8').split(':', 1)

        if not (email and password):
            # self.set_header('WWW-Authenticate', 'Basic realm="%s"' % 'anwen')
            return self.write_error(402)
        password = utils.make_password(password)
        doc = User.by_email_pass(email, password)
        if doc:
            user_info = {
                'user_id': doc.id,
                'user_email': doc.user_email,
                'user_name': doc.user_name,
                'user_domain': doc.user_domain,
            }
            token = self.create_signed_value(
                'user', tornado.escape.json_encode(user_info))
            self.res['token'] = token.decode('u8')
            return self.write_json()
        return self.write_error(401)
Ejemplo n.º 2
0
 def post(self):
     email = self.get_argument("email", '')
     password = self.get_argument("password", '')
     password = hashlib.md5(password).hexdigest()
     res = User.by_email_pass(email, password)
     if res:
         user = {'user_id': res.id,
                 'user_name': res.user_name,
                 'user_email': res.user_email,
                 'user_domain': res.user_domain}
         self.set_secure_cookie("user", tornado.escape.json_encode(user))
         self.redirect(self.get_argument("next", "/"))
     else:
         self.write('密码错误或用户不存在,请重新注册或登录')
Ejemplo n.º 3
0
Archivo: user.py Proyecto: anwen/anwen
 def post(self):
     email = self.get_argument("email", "")
     password = self.get_argument("password", "")
     password = utils.make_password(password)
     doc = User.by_email_pass(email, password)
     if doc:
         user_info = {
             "user_id": doc.id,
             "user_name": doc.user_name,
             "user_email": doc.user_email,
             "user_domain": doc.user_domain,
         }
         self.set_secure_cookie("user", tornado.escape.json_encode(user_info))
         self.redirect(self.get_argument("next", "/"))
         return
     self.redirect("/login")  # self.write('密码错误或用户不存在,请重新注册或登录')
Ejemplo n.º 4
0
 def post(self):
     email = self.get_argument('email', '')
     password = self.get_argument('password', '')
     password = utils.make_password(password)
     doc = User.by_email_pass(email, password)
     if doc:
         user_info = {
             'user_id': doc.id,
             'user_name': doc.user_name,
             'user_email': doc.user_email,
             'user_domain': doc.user_domain}
         self.set_secure_cookie(
             'user', tornado.escape.json_encode(user_info))
         self.redirect(self.get_argument('next', '/'))
         return
     self.authenticate_redirect()
Ejemplo n.º 5
0
 def post(self):
     email = self.get_argument('email', '')
     password = self.get_argument('password', '')
     password = utils.make_password(password)
     doc = User.by_email_pass(email, password)
     if doc:
         user_info = {
             'user_id': doc.id,
             'user_name': doc.user_name,
             'user_email': doc.user_email,
             'user_domain': doc.user_domain
         }
         self.set_secure_cookie('user',
                                tornado.escape.json_encode(user_info))
         self.redirect(self.get_argument('next', '/'))
         return
     self.redirect('/login')  # self.write('密码错误或用户不存在,请重新注册或登录')