使用flask返回数据中带有中文的时候会显示成乱码(ascii),
中文报文:
python
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转换后再返回
python
# -*- 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")
显示正常