flask day1
闲扯
网站 stackoverflow
对 内置函数 列表推导式 字典推导式 灵活运用
flask简介
客户端请求服务端的过程:
请求报文request 请求行-请求头-请求体 解析请求 进行路由分发 执行具体代码 生成相应数据
响应行-响应头-响应体 响应报文
web框架:一套功能代码. 稳定 扩展性好 效率高 避免重复造轮子
wsgi工具箱 采用werkzeug(路由模块) 模板引擎 使用 jinja2 这两个是flask框架的核心
虚拟环境
虚拟环境位于家目录下的隐藏文件 .virtualenvs 下
which python 查看虚拟环境目录
mkvirtualenv -p python3 py3_flask 创建虚拟环境要联网
workon py3_flask 进入虚拟环境
原生进入虚拟环境的方法: ~/.virtualenvs 创建虚拟环境的bin目录下 能看到activate 使用命令 source activate
deactivate 退出虚拟环境
revirtaulenv py3_flask 删除虚拟环境
pip install 包名
pip install flask==0.10.0 安装flask
pip freeze /pip list 查看安装的包
第一个flask程序解析
app = Flask(__name__, //自定义模块的绝对路径,决定静态文件从哪个位置开始找
static_path = None, // 静态文件的访问路径,1.0.0版本的时候弃用
static_url_path = '访问路径',
template_folder = 'templates' // 指定模板文件夹的名字
)
app.runL(host='',port=5000,debug=True)
# debug 开启调试模式
配置文件的加载
1、从类对象中加载
2、从配置文件中加载
3、从环境变量中加载
4、app.config[“DEBUG”] = True
5、app.debug = True
路由参数及请求方式
@app.route(’/user/<user_id>’) <>中为参数
methods=[“GET”,“POST”] 请求方式
json数据格式
json.dumps() 将字典转换为json字符串
json.loads() 将json字符串转换为字典
jsonify flask提供的返回json数据的函数,Content-Type为application/json
重定向
redirect(路径) 重定向到指定路径
url_for(“函数名”,参数=值) 通过指定的函数名找到对应的url
redirect(url_for(函数名,参数=值)) 一般都这样连用
自定义状态码
return “xxx”,666 第二个参数为自定义的状态码