关于python:我想在Flask中进行Pretty JSON格式化

I want to make Pretty JSON formatting in Flask

本问题已经有最佳答案,请猛点这里访问。

我想在我的flask网站(API网站)上输出漂亮的JSON,但是我的JSON文件不想正确格式化。

我已经尝试了多种方法:

1
2
3
return json.loads(json.dumps(json_text, indent=4))
return json.dumps(json_text, indent=4)
return jsonify(json_text)

json_it()函数:

1
2
3
4
def json_it(self):
    input_part = {"amount": self.amount,"currency": str(self.input_currency)}
    output_part = self.result
    return {"input": input_part,"output": output_part}

Flask API代码:

1
2
3
4
5
converter = CurrencyConvert(float(amount), input_currency, output_currency)
json_text = converter.json_it()
the_output = json.dumps(json_text, indent=10)
print(the_output)
return the_output, 200

CurrencyConvert将采用这三个参数,并根据其进行打印,如在输出它的输出中所见。 (那不应该是问题)

输出(API):
如果我打印它:

1
2
3
4
5
6
7
8
9
{
         "input": {
                   "amount": 10.92,
                   "currency":"GBP"
          },
         "output": {
                   "AED": 46.023890640000005,
          }
}

如果我退货:

1
{"input": {"amount": 10.92,"currency":"GBP" },"output": {"AED": 46.023890640000005,}}

我认为有人提出了类似的问题,但是我找不到能够帮助我的解决方案。


您可以为flask应用程序将JSONIFY_PRETTYPRINT_REGULAR属性设置为true,以便以适当的缩进级别打印JSON响应。

1
app.config['JSONIFY_PRETTYPRINT_REGULAR'] = True