其他分享
首页 > 其他分享> > Flask介绍,新手四件套,session使用

Flask介绍,新手四件套,session使用

作者:互联网

web框架介绍, Flask介绍和安装

介绍:
    Flask是一个基于Python开发并且依赖jinja2模板(DTL)和Werkzeug WSGI(符合wsgi协议的web服务器,wsgiref)服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja2模板来实现对模板的处理,即:将模板和数据进行渲染,将渲染后的字符串返回给用户浏览器。
    
安装Flask
	pip install flask
    
'''
基本样式
from flask import Flask

# app=Flask(__name__)
app = Flask('lqz')

@app.route('/')
def index():
    return 'hello  world'


if __name__ == '__main__':
    app.run()
'''

jsonify, render_template, redirect,session

return 字符串

@app.route('/index',methods=['GET'])
def index():
    return 'aaa'

'''
相当于django中的HttpResponse('字符串')
直接在浏览器中显示字符串
'''

jsonify

@app.route('/index',methods=['GET'])
def index():
    return jsonify({key:value})
'''
	返回json格式的字符串
'''

render_template

@app.route('/index',methods=['GET'])
def index():
    context = {
        'username':'张三',
        'age':20,
    }
    return render_template(模板文件名,**context)
	# return render_template('index.html',**context)
	# return render_template(模板文件名,username='张三',age=20)

'''
返回一个页面
两种传值效果一样
context 向模板传递参数
'''

redirect

@app.route('/index',methods=['GET'])
def index():
    return redirect('/home')

'''
重定向
'''

session

1.使用前需要先配置secret_key
    from flask import Flask,request
    app = Flask(__name__)
    app.secret_key = 'adasdasdasdzxocim' # 如果要使用session,必须写秘钥,可以随便写

2.使用session
from flask import session # (1)导入session
'''
POST请求,请求体中的数据都在request.from中
'''
@app.route('/login',methods=['POST'])
def login():
    username = request.from.get('username')
    password = request.from.get('password')
    if username == '春游去动物园' and password == '123456':
        session['username'] = username # (2)设置session即可
        return redirect('/home')
    else:
        return render_template('login.html',errors='用户名或密码错误')
    
    
3.从session中获取值
from flask import session
@app.route('/home',methods=['GET','POST'])
def home():
	if session.get('username') == '春游去动物园': # 从session中取出值
        context = {
            ....
        }
        return render_template('home.html',**context)
    else:
        return redirect('/login')

标签:__,四件套,return,index,Flask,app,session
来源: https://www.cnblogs.com/chunyouqudongwuyuan/p/16555002.html