如果wifi改变了烧瓶

时间:2017-05-11 18:16:07

标签: python flask flask-login

我有应用程序,如果用户更改了wifi,用户就会被注销。怎么避免呢?如何确保将持久性登录到应用程序中。

仅供参考:我不必担心添加新用户。

我正在使用flask和login_manager。

我的图书馆如下:

from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask_login import LoginManager
from flask_login import current_user, login_user, \
logout_user, login_required
from flask import request, render_template, flash, redirect, \
url_for, Blueprint, g, jsonify

按如下方式初始化烧瓶应用

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'Validpointer'

db = SQLAlchemy(app)

login_manager = LoginManager()
login_manager.init_app(app)
login_manager.login_view = 'auth.login'
login_manager.session_protection = "strong"

这是我允许用户登录的方式

@login_manager.user_loader
def load_user(id):
    return User.query.get(int(id))


@auth.before_request
def get_current_user():
    g.user = current_user

auth = Blueprint('auth', __name__)
@auth.route('/', methods=['GET', 'POST'])
def login():

    if current_user.is_authenticated:
        return redirect(url_for('auth.contact_form'))

    if request.method == 'POST' and form.validate():
        username = request.form.get('username')
        password = request.form.get('password')
        user = User.query.filter_by(username=username).first()


        if user.password == password:
                    login_user(user)
                    return redirect(url_for('auth.contact_form'))
        else:
             flash(
                'Invalid username or password. Please try again.',
                'danger')
            return render_template('base.html', form=form)

1 个答案:

答案 0 :(得分:0)

亲爱的Kppatel Patel

请尝试按如下方式修改初始化烧瓶应用程序:

login_manager.session_protection = "basic"

Refer this文章了解详情。如果需要进一步澄清,请告诉我。