Flask入门
1.创建flask应用
app = Flask(__name__)
app.run() #启动
## 2.创建路由
一个·视图函数可以绑定多个路由
@app.route("/index/")
@app.route("/")
def index():
return "index"
3.获取请求数据
在视图函数中获取数据
args = request.args.get(key) # 获取 get 参数
form = request.form.get(key) # 获取 post 参数
4.蓝图
把蓝图绑定到app
再使用蓝图绑定路由
把蓝图对象声明在其他文件,然后在导入到当前文件,从而实现项目的拆分
from flask import Blueprint,Flask
blue = Blueprint("index", __name__)
app = Flask(__name__)
app.register_blueprint(blue)
@blue.route("/")
def index():
return "index"
5.重定向
在向服务器发送请求时,服务器可以重定向到一个其他的页面
return redireck(url)
# url可以为一个绝对的网址
# 也可以是一个路由,此时是在本域名下跳转
# 也可以是ret=url_for('蓝图名称.视图函数名')
6.会话技术
cookie
在用户登录时,cookie由服务器生成然后存储在浏览器,之后浏览器在向服务器发送请求时会携带该cookie,用于服务器识别用户的身份,以保持用户与服务器端的连续访问
# 设置cookie
response.set_cookie(key,value,max_age,exprise)
# 获取cookie
request.cookies,get(key)
# 删除cookie,一般用于注销
response.delete_cookie(key)
# cookie不能修改,如果要修改,就把他删除然后重新设置一个cookie
session
服务器端会话技术,依赖于cookie
flask中的session是一个全局变量
# 设置session
session[key]=value
# 获取session
session.get(key,default=None)
# 删除session
session.pop(key)#删除某一值
session.clear()#删除全部,谨慎使用
#使用session需要在创建app时进行配置
app.config['SECRET_KRY']=key #key为字符串,session会自动使用这个字符串进行加密进行加密
app.config['PERMANENT_SESSION_LIFETIME]=datetime.timedelta(days=31) #设置session生命周期
cookie和session的区别
cookie:
- 在浏览器存储
- 安全性低
- 可以减轻服务器压力
session:
- 在服务器端储存
- 安全性高
- 对服务器要求高
- 依赖于cookie