无法解码作为 URL 参数传递的 "devanagari text"
Unable to decode "devanagari text" passed as URL param
我的 Python Flask 应用程序无法解码我从邮递员那里作为 urlparam 传递的梵文文本,例如:“सिंगापूर”。如果我看到英文文本,它会处理得很好。
我的 PostMan 查询:
获取 http://localhost:5000/getSimilarWord/सिंगापूर
from flask import Flask
from flask_restful import Resource, Api
class DevnagriText(Resource):
def get(self, textInput):
print("parsed String is :",textInput)
return {'text': textInput}
api.add_resource(DevnagriText, '/getWord/<string:textInput>')
if __name__ == '__main__':
app.run(debug=True)
我在控制台上得到的输出是
{
"text": "\u00818"
}
而不是
{
"text": "सिंगापूर"
}
您需要防止响应强制使用 ASCII:app.config['JSON_AS_ASCII'] = False
所以在你的例子中:
from flask import jsonify, Flask
from flask_restful import Resource, Api
app = Flask(__name__)
app.config['JSON_AS_ASCII'] = False
api = Api(app)
class DevnagriText(Resource):
def get(self, textInput):
print("parsed String is :",textInput)
return jsonify(text=textInput)
api.add_resource(DevnagriText, '/getWord/<string:textInput>')
if __name__ == '__main__':
app.run(debug=True)
但是,这并不重要,如果它被读入 Python 或 JavaScript.
,它们将以相同的方式被解释
我的 Python Flask 应用程序无法解码我从邮递员那里作为 urlparam 传递的梵文文本,例如:“सिंगापूर”。如果我看到英文文本,它会处理得很好。
我的 PostMan 查询: 获取 http://localhost:5000/getSimilarWord/सिंगापूर
from flask import Flask
from flask_restful import Resource, Api
class DevnagriText(Resource):
def get(self, textInput):
print("parsed String is :",textInput)
return {'text': textInput}
api.add_resource(DevnagriText, '/getWord/<string:textInput>')
if __name__ == '__main__':
app.run(debug=True)
我在控制台上得到的输出是
{
"text": "\u00818"
}
而不是
{
"text": "सिंगापूर"
}
您需要防止响应强制使用 ASCII:app.config['JSON_AS_ASCII'] = False
所以在你的例子中:
from flask import jsonify, Flask
from flask_restful import Resource, Api
app = Flask(__name__)
app.config['JSON_AS_ASCII'] = False
api = Api(app)
class DevnagriText(Resource):
def get(self, textInput):
print("parsed String is :",textInput)
return jsonify(text=textInput)
api.add_resource(DevnagriText, '/getWord/<string:textInput>')
if __name__ == '__main__':
app.run(debug=True)
但是,这并不重要,如果它被读入 Python 或 JavaScript.
,它们将以相同的方式被解释