【问题标题】:Flask request.form number values are unicode [duplicate]烧瓶 request.form 数值是 unicode [重复]
【发布时间】:2018-01-31 02:42:43
【问题描述】:

我有一个带有 POST 请求的烧瓶应用程序。当我在请求中使用 application/x-www-form-urlencoded 内容类型发送以下值时,当我的应用通过 request.form 访问它们时,所有值都是 unicode。

{
    "name": "John Doe",
    "age": 25,
    ...
}

当我在我的应用程序中访问request.form["age"] 时,它返回u"25" 而不是25。当我使用需要一个数字的 jsonschema 验证时,这是一个问题。有没有其他人遇到过这种情况?

【问题讨论】:

  • 请求中的所有值都将是unicode。哪个值(来自查询字符串、表单或 json)并不重要。 Here同样的问题。

标签: rest post unicode flask urlencode


【解决方案1】:

我会用

age = request.form.get('age', type=int)

这将为您将(字符串)年龄字段转换为整数。

在烧瓶中,.form 是 MultiDict 类型。文档位于http://werkzeug.pocoo.org/docs/0.14/datastructures/#werkzeug.datastructures.MultiDict

【讨论】:

    猜你喜欢
    • 2014-06-13
    • 1970-01-01
    • 2017-09-03
    • 2018-10-11
    • 2019-01-12
    • 1970-01-01
    • 2019-08-10
    • 1970-01-01
    • 2015-02-09
    相关资源
    最近更新 更多