flask用户登录模块+设置用户头像(简单的代码逻辑)

您所在的位置:网站首页 flask实现登录 flask用户登录模块+设置用户头像(简单的代码逻辑)

flask用户登录模块+设置用户头像(简单的代码逻辑)

2023-02-22 14:40| 来源: 网络整理| 查看: 265

# coding=utf-8# 导入蓝图对象from . import api# 导入flask封装的对象from flask import request,jsonify,current_app,session,g# 导入自定义的状态码from ihome.utils.response_code import RET# 导入模型类from ihome.models import User# 导入登陆验证装饰器from ihome.utils.commons import login_required# 导入数据库实例from ihome import db,constants# 导入七牛云from ihome.utils.image_storage import storage

# 导入正则模块import re

@api.route('/sessions',methods=['POST'])def login(): # 获取参数post请求 user_data = request.get_json() # 校验参数的存在 if not user_data: return jsonify(errno=RET.PARAMERR,errmsg='参数错误') # 获取详细的参数信息,mobile,password mobile = user_data.get('mobile') password = user_data.get('password') # 检查参数的完整性 if not all([mobile,password]): return jsonify(errno=RET.PARAMERR,errmsg='参数不完整') # 校验手机号格式 if not re.match(r'1[3456789]\d{9}',mobile): return jsonify(errno=RET.PARAMERR,errmsg='手机号格式错误') # 查询数据库,确认用户的存在,保存查询结果 try: user = User.query.filter_by(mobile=mobile).first() except Exception as e: current_app.logger.error(e) return jsonify(errno=RET.DBERR,errmsg='查询数据库异常') # 校验查询结果,确认用户已注册/确认密码正确 if user is None or not user.check_password(password): return jsonify(errno=RET.DATAERR,errmsg='用户名或密码错误') # 缓存用户信息 """ 如果要实现状态保持: def login_required(): user_id = session.get('user_id') if user_id: g.user_id = user_id else: return jsonify(errno=RET.SESSIONERR,errmsg='用户未登陆')

""" session['user_id'] = user.id session['mobile'] = mobile # 如果用户修改了用户名信息,不能指定用户名为手机号 session['name'] = user.name # 返回结果 return jsonify(errno=RET.OK,errmsg='OK',data={'user_id':user.id})



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3