为什么我按照老师的来写,登录还是没办法跳转到首页呢,浏览器报Failed to load response data?

来源:7-4 登录退出(2)

是小封鸭

2018-08-26

http://img.mukewang.com/szimg/5b8294800001b2ae23641346.jpg

http://img.mukewang.com/szimg/5b8294810001a12c24021256.jpg

from application import app
from flask import request, redirect
from common.models.User import User
from common.libs.user.UserService import UserService
from common.libs.UrlManager import UrlManager
import re


@app.before_request
def before_request():
    ignore_urls = app.config['IGNORE_URLS']
    ignore_check_login_urls = app.config['IGNORE_CHECK_LOGIN_URLS']
    path = request.path

    pattern = re.compile('%s' % "|".join(ignore_check_login_urls))
    if pattern.match(path):
        return

    user_info = check_login()

    pattern1 = re.compile('%s' % "|".join(ignore_urls))
    if pattern1.match(path):
        return

    if not user_info:
        return redirect(UrlManager.buildUrl("/user/login"))

    return


# 判断用户是否已经登录
def check_login():
    cookies = request.cookies
    auth_cookie = cookies[app.config['AUTH_COOKIE_NAME']] if app.config['AUTH_COOKIE_NAME'] in cookies else None
    if auth_cookie is None:
        return False

    auth_info = auth_cookie.split("#")
    if len(auth_cookie) != 2:
        return False
    try:
        user_info = User.query.filter_by(uid=auth_info[1]).first()
    except Exception:
        return False

    if user_info is None:
        return False

    if auth_info[0] != UserService.geneAuthCode(user_info):
        return False

    return user_info


写回答

1回答

编程浪子

2018-08-26

你贴出来的代码只是 拦截器代码,不是你真真登录判断的代码了

0
3
是小封鸭
回复
编程浪子
找到原因了,谢谢老师!
2018-08-27
共3条回复

Python Flask构建微信小程序订餐系统(可用于毕设)

微信小程序 + Python Flask 打造订餐系统全栈应用,可用于毕设。

1734 学习 · 1913 问题

查看课程