Flask使用点滴之访问前后

 flask  flask  python   2016-11-26   评论次 

flask app访问前后(即before_request、after_request),可以做一些操作,此处举例访问前验证是否登录,访问后设置header、cookie等,记录访问日志。

@app.before_request
def before_request():
    g.requestId = gen_requestId()
    g.signin    = True
    #此处应为判断是否已登录的逻辑
    logger.info("Start Once Access, this requestId is %s" %(g.requestId, ))

@app.after_request
def after_request(response):
    response.headers["X-SaintIC-Request-Id"] = g.requestId
    response.set_cookie(key="after_request", value="yes")
    logger.info(json.dumps({
        "AccessLog": {
            "status_code": response.status_code,
            "method": request.method,
            "ip": request.headers.get('X-Real-Ip', request.remote_addr),
            "url": request.url,
            "referer": request.headers.get('Referer'),
            "agent": request.headers.get("User-Agent"),
            "requestId": g.requestId,
            }
        }
    ))
    return response


点赞 打赏
取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

交流分享

QQ扫一扫或点击二维码加入,群号577543189
微信扫一扫,手滑关注它
微信扫一扫,进入小程序

推荐文章

标签云集

友情链接  交换友链

推广位