【问题标题】:Display Json formatted input from Flask in python在 python 中显示来自 Flask 的 Json 格式输入
【发布时间】:2018-07-18 06:45:55
【问题描述】:

尝试从用户那里获取一个 Json 输入并以正确的 json 格式显示它:

下面是python代码:

@app.route('/')
def my_form():
    return render_template('my-form.html')

@app.route('/', methods=['POST'])
def my_form_post():
    text = request.form['text']
    return jsonify(request.form)
if __name__ == '__main__':
      app.run(host='0.0.0.0')

这里是html代码:

<form method="POST">
    <input name="text">
    <input type="submit">
</form>

这是输出:

为了在烧瓶页面上以正确的 json 格式获取结果,我在这里做错了什么?

这是我得到的输出:

text    "{\"a\":1,\"b\":2,\"c\":3}"

期望的操作:

{
"a":1,
"b":2,
"c":3
}

【问题讨论】:

  • 请不要发布代码/输出的图像,而是复制并粘贴输出并粘贴到引用块或代码块中。
  • 您能否发布当前的输出(在引用块中)。读起来太模糊了。
  • 你在文本框中输入了什么?
  • 输入是这个 {"a":1,"b":2,"c":3}
  • 我已将输出添加为文本,请立即查看

标签: python flask


【解决方案1】:

据我所知,结果 json(输出有点模糊)。它只是没有所有的换行符。

据我所知,您使用的是flask.jsonify()。在 API 页面的flask.json.jsonify(*args, **kwargs) 下,它声明:

如果 JSONIFY_PRETTYPRINT_REGULAR 配置参数设置为 True 或 Flask 应用程序在调试模式下运行,该函数的响应将被很好地打印出来。压缩(不漂亮)格式目前意味着分隔符后没有缩进和空格。

这意味着您需要更改配置。 JSONIFY_PRETTYPRINT_REGULAR 需要设置为true

希望对我有所帮助。

【讨论】:

  • 你也在使用 Flask,是吗?
  • 那是愚蠢的,我没有看到你提到它是一个烧瓶页面的部分。
  • 试过这个 app.config['JSONIFY_PRETTYPRINT_REGULAR'] = True,但 op 还是一样
猜你喜欢
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多