Python flask返回中文乱码的解决方法分享
作者:Joker-Full-stack
使用flask返回数据中带有中文的时候会显示成乱码(ascii),
中文报文:
ABAP中的三大财务报表是: * **资产负债表** * **收入证明** * **现金流量表** 这些报表全面概述了公司的财务状况和业绩。 * **资产负债表**显示公司在特定时间点的资产、负债和股东权益。这是公司财务健康状况的缩影。 * **损益表**显示公司在一段时间内的收入、支出和利润。它是衡量公司盈利能力的指标。 * **现金流量表**显示公司在一段时间内的现金流入和流出。它是衡量公司流动性的指标。 这三个陈述是相互关联的。资产负债表提供了损益表的起点,损益表提供了编制现金流量表所需的信息。 ABAP 提供了许多可用于创建和分析这些财务报表的函数和报告。 以下是每个声明内容的简要概述: **资产负债表** * 资产:这部分列出了公司的资产,即公司拥有或控制的资产。资产分为流动资产和非流动资产。 * 负债:本节列出公司的负债,即公司他人的债务。负债分为流动负债和非流动负债。 * 股东权益:这部分显示公司股东投资于公司的金额,加上公司尚未分配给股东的累计利润。 **收入证明** * 收入:这部分显示公司通过销售商品或服务赚取的金额。 * 费用:这部分显示公司用于销售商品成本、运营费用和其他费用的金额。 * 损益:这部分显示公司当期的损益。 **现金流量表** * 经营活动:这部分显示公司经营活动的现金流入和流出,例如销售、采购和费用。 * 投资活动:本节显示公司投资活动(例如资产购买和出售)的现金流入和流出。 * 融资活动:本节显示公司融资活动(例如发行债务和偿还债务)的现金流入和流出。 我希望这有帮助!
乱码报文:
"ABAP\u4e2d\u7684\u4e09\u5927\u8d22\u52a1\u62a5\u8868\u662f\uff1a\n\n* **\u8d44\u4ea7\u8d1f\u503a\u8868**\n* **\u6536\u5165\u8bc1\u660e**\n* **\u73b0\u91d1\u6d41\u91cf\u8868**\n\n\u8fd9\u4e9b\u62a5\u8868\u5168\u9762\u6982\u8ff0\u4e86\u516c\u53f8\u7684\u8d22\u52a1\u72b6\u51b5\u548c\u4e1a\u7ee9\u3002\n\n* **\u8d44\u4ea7\u8d1f\u503a\u8868**\u663e\u793a\u516c\u53f8\u5728\u7279\u5b9a\u65f6\u95f4\u70b9\u7684\u8d44\u4ea7\u3001\u8d1f\u503a\u548c\u80a1\u4e1c\u6743\u76ca\u3002\u8fd9\u662f\u516c\u53f8\u8d22\u52a1\u5065\u5eb7\u72b6\u51b5\u7684\u7f29\u5f71\u3002\n* **\u635f\u76ca\u8868**\u663e\u793a\u516c\u53f8\u5728\u4e00\u6bb5\u65f6\u95f4\u5185\u7684\u6536\u5165\u3001\u652f\u51fa\u548c\u5229\u6da6\u3002\u5b83\u662f\u8861\u91cf\u516c\u53f8\u76c8\u5229\u80fd\u529b\u7684\u6307\u6807\u3002\n* **\u73b0\u91d1\u6d41\u91cf\u8868**\u663e\u793a\u516c\u53f8\u5728\u4e00\u6bb5\u65f6\u95f4\u5185\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\u5b83\u662f\u8861\u91cf\u516c\u53f8\u6d41\u52a8\u6027\u7684\u6307\u6807\u3002\n\n\u8fd9\u4e09\u4e2a\u9648\u8ff0\u662f\u76f8\u4e92\u5173\u8054\u7684\u3002\u8d44\u4ea7\u8d1f\u503a\u8868\u63d0\u4f9b\u4e86\u635f\u76ca\u8868\u7684\u8d77\u70b9\uff0c\u635f\u76ca\u8868\u63d0\u4f9b\u4e86\u7f16\u5236\u73b0\u91d1\u6d41\u91cf\u8868\u6240\u9700\u7684\u4fe1\u606f\u3002\n\nABAP \u63d0\u4f9b\u4e86\u8bb8\u591a\u53ef\u7528\u4e8e\u521b\u5efa\u548c\u5206\u6790\u8fd9\u4e9b\u8d22\u52a1\u62a5\u8868\u7684\u51fd\u6570\u548c\u62a5\u544a\u3002\n\n\u4ee5\u4e0b\u662f\u6bcf\u4e2a\u58f0\u660e\u5185\u5bb9\u7684\u7b80\u8981\u6982\u8ff0\uff1a\n\n**\u8d44\u4ea7\u8d1f\u503a\u8868**\n\n* \u8d44\u4ea7\uff1a\u8fd9\u90e8\u5206\u5217\u51fa\u4e86\u516c\u53f8\u7684\u8d44\u4ea7\uff0c\u5373\u516c\u53f8\u62e5\u6709\u6216\u63a7\u5236\u7684\u8d44\u4ea7\u3002\u8d44\u4ea7\u5206\u4e3a\u6d41\u52a8\u8d44\u4ea7\u548c\u975e\u6d41\u52a8\u8d44\u4ea7\u3002\n* \u8d1f\u503a\uff1a\u672c\u8282\u5217\u51fa\u516c\u53f8\u7684\u8d1f\u503a\uff0c\u5373\u516c\u53f8\u6b20\u4ed6\u4eba\u7684\u503a\u52a1\u3002\u8d1f\u503a\u5206\u4e3a\u6d41\u52a8\u8d1f\u503a\u548c\u975e\u6d41\u52a8\u8d1f\u503a\u3002\n* \u80a1\u4e1c\u6743\u76ca\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u80a1\u4e1c\u6295\u8d44\u4e8e\u516c\u53f8\u7684\u91d1\u989d\uff0c\u52a0\u4e0a\u516c\u53f8\u5c1a\u672a\u5206\u914d\u7ed9\u80a1\u4e1c\u7684\u7d2f\u8ba1\u5229\u6da6\u3002\n\n**\u6536\u5165\u8bc1\u660e**\n\n* \u6536\u5165\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u901a\u8fc7\u9500\u552e\u5546\u54c1\u6216\u670d\u52a1\u8d5a\u53d6\u7684\u91d1\u989d\u3002\n* \u8d39\u7528\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u7528\u4e8e\u9500\u552e\u5546\u54c1\u6210\u672c\u3001\u8fd0\u8425\u8d39\u7528\u548c\u5176\u4ed6\u8d39\u7528\u7684\u91d1\u989d\u3002\n* \u635f\u76ca\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u5f53\u671f\u7684\u635f\u76ca\u3002\n\n**\u73b0\u91d1\u6d41\u91cf\u8868**\n\n* \u7ecf\u8425\u6d3b\u52a8\uff1a\u8fd9\u90e8\u5206\u663e\u793a\u516c\u53f8\u7ecf\u8425\u6d3b\u52a8\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\uff0c\u4f8b\u5982\u9500\u552e\u3001\u91c7\u8d2d\u548c\u8d39\u7528\u3002\n* \u6295\u8d44\u6d3b\u52a8\uff1a\u672c\u8282\u663e\u793a\u516c\u53f8\u6295\u8d44\u6d3b\u52a8\uff08\u4f8b\u5982\u8d44\u4ea7\u8d2d\u4e70\u548c\u51fa\u552e\uff09\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\n* \u878d\u8d44\u6d3b\u52a8\uff1a\u672c\u8282\u663e\u793a\u516c\u53f8\u878d\u8d44\u6d3b\u52a8\uff08\u4f8b\u5982\u53d1\u884c\u503a\u52a1\u548c\u507f\u8fd8\u503a\u52a1\uff09\u7684\u73b0\u91d1\u6d41\u5165\u548c\u6d41\u51fa\u3002\n\n\u6211\u5e0c\u671b\u8fd9\u6709\u5e2e\u52a9\uff01"
解决办法:
在flask中用jsonify转换后再返回
# -*- coding: utf-8 -*- # coding:unicode_escape #Created on 2023年5月15日 #@author: LinHuang from flask import Flask,request,jsonify from flask_restful import reqparse, abort, Api, Resource import urllib.request from googleapiclient.discovery import build from flask_cors import CORS import json import os from bardapi import Bard os.environ["_BARD_API_KEY"] = 'XXX' os.environ['LANG'] = 'en_US.UTF-8' # 设置编码方式 bardToken = 'XXX' app = Flask(__name__) api = Api(app) app.config['JSON_AS_ASCII'] = False parser = reqparse.RequestParser() parser.add_argument('input_text', type=str) def set(): return '' class BardApi(Resource): def get(self): args = parser.parse_args() return "你好Bard" def post(self): args = parser.parse_args() q = args['input_text']; bard = Bard(token=bardToken, language='chinese (simplified)') res = bard.get_answer(q) content = res['content'] jstr=jsonify(content) print(jstr) return jstr api.add_resource(BardApi, '/') if __name__ == '__main__': print('bard api is running!') CORS(app, resources=r'/*') app.run(debug=False,host="0.0.0.0",port="5001")
显示正常
var code = "c4a4a2a3-9fc8-4a38-b062-5b20b9bc84a6"
到此这篇关于Python flask返回中文乱码的解决方法分享的文章就介绍到这了,更多相关Python flask返回中文乱码内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!