gpt4 book ai didi

python - 具有大型结果集的 API 响应

转载 作者:太空宇宙 更新时间:2023-11-03 18:34:36 25 4
gpt4 key购买 nike

我们有一个 REST API,作为其中的一部分,我们为客户提供了多个 API 来绘制分析报告。一些非常大的查询可能需要 5 到 10 分钟才能完成,并且可以返回 50mb 到 150mb 范围内的响应。

目前,客户端只需等待响应。我们不确定这是否真的是最佳实践,或者是否应该以其他方式处理此类复杂/大型查询和响应。对于当前最佳实践有任何建议吗?

注意:该 API 将由构建大型报告的自动化流程调用,因此我们不确定标准分页是否有效或理想。

最佳答案

如果您需要处理长时间运行的任务,从客户端的角度来看,最好按如下方式异步处理它。

客户端发送 POST 请求,服务器创建新资源(或者可以立即启动后台处理)并返回 HTTP 202 Accepted 以及任务的表示(例如状态、开始时间、预期结束时间等)在 Content-Location header 中添加任务 URL,以便客户端可以跟踪它。

客户端可以向指定的URL发送GET请求来获取状态。服务器可以返回以下响应。

尚未完成

服务器返回 HTTP 200 OK 以及任务资源,以便客户端可以检查状态。

完成

服务器返回 HTTP 303 See Other 和 Location header ,其中包含显示任务结果的资源的 URL。

错误

服务器返回 HTTP 200 OK 以及描述错误的任务资源

关于python - 具有大型结果集的 API 响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21824677/

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