Flask笔记

2016/05/23 Flask 阅读次数:

Flask笔记

json数据用data获取

请求钩子是通过装饰器的形式实现,类似于Django的中间件. Flask支持如下四种请求钩子:

  • before_first_request:在处理第一个请求前运行。
  • before_request:在每次请求前运行。
  • after_request:在每次请求后运行。
  • teardown_request:在每次请求后运行,即使有未处理的异常抛出。
@app.route('/')
def hello_world():
    print '这里正在执行处理逻辑'
    return 'Hello World!'


# 在处理第一个请求前运行. 应用场景: 比如连接数据库操作
@app.before_first_request
def before_first_request():
    print 'before_first_request'

# 在每次请求前运行。应用场景: 比如对数据做效验. 如果数据有问题, 可以直接返回. 就不会再去执行对应的视图函数
@app.before_request
def before_request():
    print 'before_request'
    # return 'hehe'

# 如果没有未处理的异常抛出, 在每次请求后运行。应用场景: 比如拼接响应头信息. 让所有json.dumps()的数据, 统一增加Content-Type为application/json
@app.after_request
def after_request(response):
    print 'after_request'
    response.headers['Content-Type'] = 'application/json'
    return response


# 在每次请求最后运行,即使有未处理的异常抛出。 可以捕获到异常信息
@app.teardown_request
def teardown_request(e):
    print 'teardown_request %s' % e

设置cookie 需要make_response返回消息设置

flask中将session存在cookie当中,不需要依赖三方数据库,实际还需要用到redis

通过使用Flask-Script扩展,我们可以在Flask服务器启动的时候,通过命令行的方式启动,跟数据迁移关联

上下文就是4个对象:request,session,current_app,g

Search

    Table of Contents