一、使用flask创建对象时的参数
通过http://127.0.0.1:5000/static/index.html直接访问静态文件时,/static不是指存放静态文件的文件名,而是静态文件的标识,可以通过static_url_path更改
二、配置文件的使用方式
1.创建配置文件config.cfg(文件的名字和后缀不是固定的,可以自定义),然后在app.py中引入
2.以对象的方式引入,创建类
3.直接通过config进行设置
三、读取配置参数
1.
2.当视图函数无法使用app对象时,可以导入current_app,current_app相当于app的代理
四、run的使用
host=0.0.0.0时,任何ip都可以访问
debug=True,同配置文件中的DEBUG=True
五、路由的规则
1.通过Methods限定访问方式
此时只能通过post方式访问视图函数,若是get方式访问,结果如下:
可以通过app.url_map查看路由信息
2.当两个视图函数使用同一个路由时,可以通过设置Methods区分开,如果访问方式相同,则上边的视图函数会覆盖下边的,因为在路由信息中,上边的视图函数的路径先被查找
3.多个路径调用同一个视图函数,路由可以叠加
4.重定向和反向解析,导入redirect和url_for(视图函数名)
5.转换器,匹配url中的参数(django中使用的是正则进行匹配)
默认的转换器:
不加类型转换器获得的字符串是Unicode类型的数据,有时需要进行类型转换str(goods_id)
自定义转换器 from werkzeug.routing import BaseConverter:
to_python函数:
to_url函数:
to_url函数执行在正则匹配之前,视图函数调用之前,用在进行重定向的时候,如下,重定向到number视图函数时,
/phone/后没有具体的值,无法构建完整的url,会报错,报错如下,需要在反向解析时为给send_phone传值:
转换器参考博客:https://blog.csdn.net/Enjolras_fuu/article/details/59057826
六、request对象
python2中字符串有str和unicode(u'字符')两种类型,有时需要类型转化
七、abort
自定义返回给前端页面的错误信息:
八、响应信息
1.响应体,状态码,响应头(元组)
2.响应体,状态码,响应头(字典)
3.导入make_response模块
九、返回json格式数据
导入json模块,json.loads()可以将json格式数据转换为字典类型
json.dumps()可以将字典类型转换为json格式
使用jsonify()转换数据后不需要再设置上图的响应头
十、cookie
cookie是设置在响应头中的,也可以直接通过响应头设置
十一、session
import session
需要配置密钥
session会设置到cookie中,依赖于cookie,设置在cookie中的session可以设置有效时间
session也可以设置到url中,此时无法设置有效时间