[英]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.