本文共 1004 字,大约阅读时间需要 3 分钟。
——————————————————————前言————————————————————————————
Flask调用视图函数以后, 会将其返回值作为响应的内容。 本节我们来介绍4种响应。
第一种响应:
@app.route('/')def index(): return '实例的返回语句有两个返回值, 第一个是简单字符串, 第二个是状态码, 有时候也会有第三个参数——由响应报文首部组成的字典。Bad Request
', 400
第二种响应:
from flask import make_response@app.route('/')def index(): response = make_response('make_response函数可以接受1, 2或3个参数, 和第一种响应的返回值一样, 并且返回一个相应对象response。This document carries a cookie!
') response.set_cookie('answer', '42') return response
我们可以用相应对象调用各种方法进一步设置响应, 该例设置了响应的cookie。
最后返回相应对象。
第三种响应:
from flask import redirect@app.route('/')def index(): return redirect('http://www.example.com')该响应为重定向响应,重定向响应的状态码为302, 指向地址由Location首部提供。
重定向响应可以采取第一, 二种响应形式, 不过由于使用频繁, Flask提供了redirect()辅助函数, 其参数是重定向的网址。
第四种响应:
from flask import abort@app.route('/user/abort函数用于处理错误, 该例中如果用户不存在, 就返回状态码404.')def get_user(id): user = load_user(id) if not user: abort(404) return ' Hello, %s
' %user.name
注意:abort函数不会把控制权交回视图函数, 而是抛出异常把控制权交回web服务器。
转载地址:http://fqaii.baihongyu.com/