def login(): if request.method == 'GET': return render_template('login.html') else: body = request.json user = body.get('user', '') password = body.get('password', '') if not all([user, password]): return json.dumps({ 'success': False, 'reason': '用户名和密码不能同时为空!' }, ensure_ascii=False) user_info = mongo.get_user_info(user) if not user_info['success']: return json.dumps(user_info) password_hash = user_info['user_info']['password_hash'] if not check_password_hash(password_hash, password): return json.dumps({'success': False, 'reason': '用户名与密码不匹配!'}) session_id, session_data = generate_session( str(user_info['user_info']['_id']), user) redis.save_session(session_id, session_data) response = make_response(json.dumps({'success': True})) response.set_cookie('session', value=session_id) return response
def register(): body = request.json user = body.get('user', '') password = body.get('password', '') if not all([user, password]): return json.dumps({'success': False, 'reason': '用户名和密码不能同时为空!'}, ensure_ascii=False) if redis.check_user_registered(user): return json.dumps({'success': False, 'reason': '用户名已被注册!请更换'}) password_hash = generate_password_hash(password) user_id = mongo.save_user_info(user, password_hash) session_id, session_data = generate_session(user_id, user) redis.save_session(session_id, session_data) response = make_response(json.dumps({'success': True})) response.set_cookie('session', value=session_id) return response
def login(body): user = body.get('user', '') password = body.get('password', '') if not all([user, password]): return json.dumps({ 'success': False, 'reason': '用户名和密码不能同时为空!' }, ensure_ascii=False) user_info = mongo_logic.get_user_info(user) if not user_info['success']: return json.dumps(user_info) password_hash = user_info['user_info']['password_hash'] if not check_password_hash(password_hash, password): return json.dumps({'success': False, 'reason': '用户名与密码不匹配!'}) session_id, session_data = generate_session( str(user_info['user_info']['_id']), user) redis_logic.save_session(session_id, session_data) response = make_response(json.dumps({'success': True})) response.set_cookie('session', value=session_id) return response
def register(body): user = body.get('user', '') password = body.get('password', '') if not all([user, password]): return json.dumps({ 'success': False, 'reason': '用户名和密码不能同时为空!' }, ensure_ascii=False) bloom.lock(user) if bloom.check_duplicate(user): bloom.unlock(user) return json.dumps({'success': False, 'reason': '用户名已被注册!请更换'}) bloom.set_key(user) bloom.unlock(user) password_hash = generate_password_hash(password) user_id = mongo_logic.save_user_info(user, password_hash) session_id, session_data = generate_session(user_id, user) redis_logic.save_session(session_id, session_data) response = make_response(json.dumps({'success': True})) response.set_cookie('session', value=session_id) return response