我希望返回一个多行字符串作为 REST Get 请求的一部分。
我有以下清单:
items = [1,2,3,4,5]
Run Code Online (Sandbox Code Playgroud)
我想将其转换为一个字符串,中间有换行符。所以我这样做了:
items = "\n".join(items)
Run Code Online (Sandbox Code Playgroud)
这是我的代码块:
from flask import Flask, jsonify, request, Response, make_response
app = Flask(__name__)
@app.route('/test', methods=['GET'])
def test():
items = [1,2,3,4,5]
items = "\n".join(items)
return items
Run Code Online (Sandbox Code Playgroud)
我得到的回应是:
1 2 3 4 5
Run Code Online (Sandbox Code Playgroud)
然而,我期待:
1
2
3
4
5
Run Code Online (Sandbox Code Playgroud)
我可以做什么来解决这个问题?
我在本地计算机上运行两个 Flask 应用程序(A 和 B)。在 Flask 应用程序 B 中,我从 Flask 应用程序 A 调用端点。
从 Flask 应用程序 A 调用的端点是:/hello_world
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route("/hello_world", methods=["POST"])
def hello_world():
a = request.json.get("a")
b = request.json.get("b")
return jsonify({a:b})
if __name__ == '__main__':
app.run(host='0.0.0.0',port=5000,debug=True)
Run Code Online (Sandbox Code Playgroud)
在 Flask 应用程序 B 中,端点/hi_world正在调用上述端点,如下所示:
import requests
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route("/hi_world", methods=["POST"])
def hi_world():
a = request.json.get("a")
b = request.json.get("b")
paras = {"a":a, "b":b}
response = requests.post(url="http://0.0.0.0:5000/",data=paras) …Run Code Online (Sandbox Code Playgroud)