一、扩展 Flask-RESTful
1、内容协商:
Flask-RESTful 仅配置为支持 JSON。
要添加其它的 mediatypes 到你的 API 中,你需要在 Api 对象中声明你支持的表示。
app = Flask(__name__)
api = restful.Api(app)
@api.representation('application/json')
def output_json(data, code, headers=None):
resp = make_response(json.dumps(data), code)
resp.headers.extend(headers or {
})
return resp
这些表示函数必须返回一个 Flask Response 对象。
2、自定义字段&输入
一种最常见的 Flask-RESTful 附件功能就是基于你自己数据类型的数据来定义自定义的类型或者字段。
字段:
自定义输出字段让你无需直接修改内部对象执行自己的输出格式。
所有你必须做的就是继承 Raw 并且实现 format() 方法:
class AllCapsString(fields.Raw):
def format(self, value):
return value.upper()
# example usage
fields = {
'name': fields