INNER CODE UNIT · Python

login

kingname/SourceCodeofMongoRedis · chapter_12/QASystem/main.py:46

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}))

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…