码迷,mamicode.com
首页 > 其他好文 > 详细

flask学习

时间:2019-04-18 23:26:22      阅读:320      评论:0      收藏:0      [点我收藏+]

标签:and   col   env   div   加密   sgi   import   htm   eve   

特点:

  短小精悍,可扩展性强

  依赖wsgi:werkzurg

werkzurg示例:

技术图片
from werkzeug.wrappers import Request, Response
from werkzeug.serving import run_simple

def run(environ,start_response):

    return [b"asdfasdf"]

if __name__ == __main__:

    run_simple(localhost, 4000, run)
最简单的实现形式
技术图片
from werkzeug.wrappers import Request, Response

@Request.application
def hello(request):
    return Response(Hello World!)

if __name__ == __main__:
    from werkzeug.serving import run_simple
    run_simple(localhost, 4000, hello)
正常的内部实现形式
技术图片
#访问index则可以得到Hello World

from flask import Flask
app = Flask(__name__)

@app.route("/index")
def run():
    return "Hello World"

if __name__ == "__main__":
    app.run()
九行代码实现网页

 

实现一个登陆验证的功能:

技术图片
from flask import Flask,render_template,request,redirect,session
app = Flask(__name__)    #一般用__name__,但是用其他只要是字符串都行
app.secret_key = "asdfsg"      #给session加密的盐

@app.route("/login",methods=["GET","POST"])
def login():
    if request.method == "GET":
        return render_template("login.html")
    user = request.form.get("user")     #request.args相当于request.GET,request.form相当于request.POST
    pwd = request.form.get("pwd")
    if user=="xxx" and pwd=="xxx":
        session["user"] = user          #flask的session其实是cookie,但是加了密
        return redirect("/index")
    else:
        return render_template("login.html",error="用户名或密码错误")  #或者可以写成**{error:"用户名或密码错误"}

@app.route("/index")    #不写methods默认只接受GET请求
def index():
    user = session.get("user")
    if not user:
        return redirect("/login")
    return render_template("index.html")

if __name__ == "__main__":
    app.run()
View Code

 

flask学习

标签:and   col   env   div   加密   sgi   import   htm   eve   

原文地址:https://www.cnblogs.com/yinwenjie/p/10733098.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!