• 2020年3月23日


    时间:2.5个小时左右

    代码:100行左右

    博客:1

    知识点:flask框架的session

    继续昨天的内容:

    8.会话session

    会话可以用来保存当前请求的一些状态,以便于在请求之前共享信息。

    from flask import Flask,url_for,request,render_template,redirect,session
    @app.route('/login', methods=['POST', 'GET'])
    def login():
        if request.method == 'POST':
            if request.form['user'] == 'admin':
                session['user'] = request.form['user']
                return 'Admin login successfully!'
            else:
                return 'No such user!'
        if 'user' in session:
            return 'Hello %s!' % session['user']
        else:
            title = request.args.get('title', 'Default')
            return render_template('login.html', title=title)
    @app.route('/logout')
    def logout():
        session.pop('user', None)
        return redirect(url_for('login'))
    
    app.secret_key = '123456'
    if __name__ == "__main__":
        app.run(debug=True)
    你可以看到,”admin”登陆成功后,再打开”login”页面就不会出现表单了。然后打开logout页面可以登出。session对象的操作就跟一个字典一样。特别提醒,使用session时一定要设置一个密钥”app.secret_key”,如上例。不然你会得到一个运行时错误,内容大致是”RuntimeError: the session is unavailable because no secret key was set”。密钥要尽量复杂,最好使用一个随机数,这样不会有重复,上面的例子不是一个好密钥。

    参考:https://www.jianshu.com/p/6452596c4edb

  • 相关阅读:
    Splunk Fundamentals 2 – Lab Exercises
    Splunk Fundamentals 1 Lab Exercises
    python交换机自动化巡检
    nginx web服务器
    linux tips
    web服务器统计情况
    HTTP请求报文和响应报文
    python 之路 day 14 HTML CSS
    python 之路 13 ORM SQLAlchemy
    python 之路12 RabbitMQ Python 操作mysql
  • 原文地址:https://www.cnblogs.com/j-y-s/p/14903189.html
Copyright © 2020-2023  润新知