gpt4 book ai didi

python - 请求无法在同一个 Flask 应用程序中调用多个路由

转载 作者:太空狗 更新时间:2023-10-29 21:37:17 25 4
gpt4 key购买 nike

我无法成功使用 Python 请求在使用 Flask 的同一应用程序中调用第二个路由。我知道直接调用该函数的最佳做法,但我需要它使用请求使用 URL 进行调用。例如:

from flask import Flask
import requests
app = Flask(__name__)

@app.route("/")
def hello():
return "Hello World!" # This works

@app.route("/myrequest")
def myrequest():
#r = requests.get('http://www.stackoverflow.com', timeout=5).text # This works, but is external
#r = hello() # This works, but need requests to work
r = requests.get('http://127.0.0.1:5000/', timeout=5).text # This does NOT work - requests.exceptions.Timeout
return r

if __name__ == "__main__":
app.run(debug=True, port=5000)

最佳答案

您的代码假定您的应用可以同时处理多个请求:初始请求,以及在处理初始请求时生成的请求。

如果你正在运行像 app.run() 这样的开发服务器,它默认在单线程中运行;因此,它一次只能处理一个请求。

使用 app.run(threaded=True) 在开发服务器中启用多线程。


从 Flask 1.0 开始,开发服务器默认是线程化的。

关于python - 请求无法在同一个 Flask 应用程序中调用多个路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24023635/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com