github.com/jincm/wesharechain@v0.0.0-20210122032815-1537409ce26a/server/block/api/account/login.py (about) 1 #coding:utf-8 2 3 from tornado.web import RequestHandler 4 import time 5 from util.exception import ParamExist 6 from util import common_util 7 import logging 8 import json 9 from operation import user 10 from operation import verify_manage 11 12 LOG = logging.getLogger(__name__) 13 14 class LoginHandler(RequestHandler): 15 def initialize(self, **kwds): 16 pass 17 18 def post(self): 19 try: 20 phone = self.get_argument('phone', '') 21 verify_code = self.get_argument('verify_code', '') 22 23 op = user.UserOp() 24 # 验证下手机 25 filters = { 26 "phone": phone 27 } 28 user_list = op.lists(**filters) 29 if not user_list: 30 self.finish(json.dumps({'state': 2, "message": "User phone not register"})) 31 return 32 33 # 验证验证码 34 code_op = verify_manage.VerifyOp() 35 # code_list = code_op.lists(**filters) 36 # if code_list: 37 # code_info = code_op.views(code_list[0]) 38 # 39 # if verify_code != code_info.get('verify_code', ''): 40 # self.finish(json.dumps({'state': 3, "message": "Verify code not equl"})) 41 # return 42 verify_re = code_op.verify_code_phone(phone=phone, code=verify_code) 43 if not verify_re: 44 self.finish(json.dumps({'state': 1, "message": "Verify code failed"})) 45 return 46 47 _ = op.login(phone) 48 token = common_util.gen_token(_.get("id"), int(time.time())) 49 self.finish(json.dumps({ 50 'state': 0, 51 'message': 'ok', 52 'user_info': _, 53 'token': token 54 })) 55 except Exception as ex: 56 LOG.error("Reset pwd error:%s" % ex) 57 self.finish(json.dumps({'state': 10, 'message': 'Login error'}))