gpt4 book ai didi

python - 如何从 Flask 服务器发送多个异步请求?

转载 作者:行者123 更新时间:2023-12-04 03:12:01 27 4
gpt4 key购买 nike

所以我正在构建一个 Flask API,并且我有一个 GET 路由,它基本上向另一个 API 发送 5 个请求以收集数据,然后我将这些数据合并并返回。

像这样:

results = [requests.get('http://localhost:9000/ss/1'),
requests.get('http://localhost:9000/ss/2'),
requests.get('http://localhost:9000/ss/3'),
requests.get('http://localhost:9000/ss/4'),
requests.get('http://localhost:9000/ss/5')]

问题是每个请求大约需要 2 秒,因此需要 10 秒才能完成。我怎样才能使用不同的线程使所有请求异步,这样总共需要大约 2 秒?然后我如何告诉 API 在它们全部加载后开始合并它们?

非常感谢任何帮助!

最佳答案

你可以使用 grequests package( https://pypi.python.org/pypi/grequests ),我认为它最初是基于 gevent 和 requests 的。

代码很简单:

urls = [url1,url2,...]
#prepare the shells
shells = (grequests.get(u) for u in urls)
#start all requests at the same time
responses = grequests.map(shells) #will output a list of responses that you can access

关于python - 如何从 Flask 服务器发送多个异步请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44445376/

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