3

根据请求的标头处理请求正文的正确方法是什么Content-Type

我需要实现一个支持 XML、JSON 和表单编码请求参数的 RESTful 服务,但我似乎找不到提取请求参数的干净方法。

这是我应该使用中间件的东西吗?我需要扩展 Request 对象吗?

我还没有找到任何可以做到这一点的包,这似乎是在烧瓶中创建 RESTful 服务的一项非常常见的任务。

4

2 回答 2

2

您可能指的是 Accept 标头,因为 Content-Type 用于响应。这里有三个选择:

  1. 按照处理接受标头片段中的描述自行构建。
  2. 使用 Flask-RESTful 扩展(请参阅文档中的内容协商部分)。
  3. 使用专门为处理这种情况而构建的Flask-Pushrod扩展。
于 2012-12-25T10:15:20.623 回答
0

您可以按照此处@app.before_request的说明使用。一旦你完成了对请求参数的规范化,你可以将它们保存到,如下所示:g

from flask import g
from flask import request
...


@app.before_request
def before_request():
    # normalize params based on Content-Type
    g.params = normalized_params
于 2012-12-28T00:59:09.860 回答