flask初步使用

来源:互联网 发布:社交软件英语怎么说 编辑:程序博客网 时间:2024/06/06 03:29
from flask import Flaskfrom flask import render_template, redirect,url_forfrom flask import requestapp = Flask(__name__)@app.route('/login', methods=['POST','GET'])def login():    error = None    if request.method == 'POST':        if request.form['username']=='admin':            return redirect(url_for('home',username=request.form['username']))        else:            error = 'Invalid username/password'    return render_template('login.html', error=error)@app.route('/home')def home():    return render_template('home.html', username=request.args.get('username'))if __name__ == '__main__':    cfg = {        'debug': True,        'host': '0.0.0.0',        'port': 8000    }    app.run(**cfg)  

home.html

<!DOCTYPE html><html lang="zh-CN">  <head>    <meta charset="utf-8">    <title>home</title>  </head>  <body>    <h1>wlcome {{username}} , this is home</h1>  </body></html>


login.html

<!DOCTYPE html><html lang="zh-CN">  <head>    <meta charset="utf-8">    <title>login</title>  </head>  <body>    <form  style="margin:20px;border:1px solid red" method="post" action="/login">        <span>username:</span><input type="text" name="username" id="username"><br/>        <span>password:</span><input type="password" name="password" id="password"><br/>        <button type="submit" id="loginBtn">login</button>    </form>    {% if error %}        <h1 style="color:red">{{ error }}!</h1>    {% endif %}  </body></html>


两个文件全部放入templates文件夹中,然后python run.py并且在

浏览器中输入:

inet:8000/home

inet:8000/login即可

inet是ifconfig -a命令中得到的局域网ip,替换到上面两处即可。


注意,代码中的0.0.0.0仅仅是表示局域网(也就是非127.0.0.0地址)访问可用,想要外网访问需要额外的设置。

而网上所谓的手机也可以打开,前提条件是手机和电脑使用了同一个局域网(或者通俗但是不精确的讲,两者连接了同一个wifi)