繁体   English   中英

Flask jsonify - 如何发回字符串?

[英]Flask jsonify - how to send string back?

我正在构建以字符串格式发送结果的API。

@app.route('/', methods=['POST'])
def converter():
    content = request.json
    # translate() - english to hindi
    converted = translate(content)
    print converted
    #prints string normally
    return jsonify({"result":converted})

当尝试curl -H "Content-Type: application/json" -X POST -d '{"text":"Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor."}' http://localhost:5000/它送我回来

{
  "result": "\u041b\u043e\u0440\u044d\u043c \u0438\u043f\u0441\u04af\u043c \u0434\u043e\u043b\u043e\u0440 \u0441\u0438\u0442 \u0430\u043c\u044d\u0442, c\u043e\u043d\u0441\u044dc\u0442\u044d\u0442\u04af\u044d\u0440 \u0430\u0434\u0438\u043f\u0438\u0441c\u0438\u043d\u0433 \u044d\u043b\u0438\u0442. \u0410\u044d\u043d\u044d\u0430\u043d c\u043e\u043c\u043c\u043e\u0434\u043e \u043b\u0438\u0433\u04af\u043b\u0430 \u044d\u0433\u044d\u0442 \u0434\u043e\u043b\u043e\u0440."
}

如何发回字符串而不是json对象?

不要将结果包装在jsonify调用中,只需return converted jsonify

@app.route('/', methods=['POST'])
def converter():
    content = request.json
    converted = translate(content)
    return converted

我认为jsonify默认使用ASCII。 有一个配置选项:

app.config['JSON_AS_ASCII'] = False

这将默认设置为unicode。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM