zoukankan      html  css  js  c++  java
  • Flask ==> 简单用户登录

    Flask ==>  简单用户登录

    from flask import Flask,render_template,request,redirect,session
    import functools
    
    app=Flask(__name__,template_folder='templates',static_url_path='/xxxxxx')
    
    app.secret_key = "sdfasdfasdf3fsdf" #加密钥
    
    
    def wapper(func):
        @functools.wraps(func)
        def inner(*args,**kwargs):
            if not session.get('user_info') and request.path != "/login":
                return redirect('/login')
            return func(*args,**kwargs)
        return inner
    
    
    
    @app.route('/login',methods=['GET','POST'])
    @wapper
    def login():
        if request.method == "GET":
            return render_template('login.html')
        else:
            user = request.form.get('user')
            pwd = request.form.get('pwd')
            if user =='zxc' and pwd == '123':
                session['user_info'] = user
                # print(session['user_info'])
                return redirect('/index')
            else:
                # return render_template('login.html',msg='用户名或者密码有误')
                return render_template('login.html',**{'msg':'用户名或者密码有误'})
        # return "index"  #类似于HttpResponse
        # return render_template('login.html')
    
    @app.route('/index',methods=['GET'])
    @wapper
    def index():
    
        return  render_template('/index.html')
    
    
    
    if __name__ == '__main__':
        app.run()
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Title</title>
    </head>
    <body>
    <h1>欢迎登录</h1>
    <form action="" method="post">
        <input type="text" name="user">
        <input type="text" name="pwd">
        <input type="submit">{{msg}}
        <img src="/xxxxxx/111.jpg" alt="">
    </form>
    </body>
    </html>
    login.html
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Title</title>
    </head>
    <body>
    <h1>
        恭喜!已登录
    </h1>
    </body>
    </html>
    index.html
  • 相关阅读:
    yellow joke 3
    JavaScript下拉菜单(1)
    Java程序员面试三十二问
    Oracle里时间的应用
    ·Java读取properties文件
    Web 窗体用户控件
    怎么解决层被flash挡住的问题?
    自定义控件
    关于mysql中的DDL,DML,DQL和DCL
    自定义一个简单连接池以及常见连接池的使用
  • 原文地址:https://www.cnblogs.com/zhongbokun/p/8196606.html
Copyright © 2011-2022 走看看