gpt4 book ai didi

rest - 结合 REST 请求和回复的约定?

转载 作者:行者123 更新时间:2023-12-03 13:36:02 24 4
gpt4 key购买 nike

对于复杂的 Web 应用程序,一个页面 View 可能需要许多不同类型的数据。如果您正在执行客户端模板化并从 RESTful Web 服务中提取此数据,您可能需要发出大量请求来填充页面。是否有任何约定可以组合 REST 请求,以接收包含所有所需响应的单个有效负载?

以 Stack Exchange 用户页面为例,您可能需要至少从 the Stack Exchange API 调用这些页面。构建页面:

  • /users/{id}
  • /users/{id}/answers
  • /users/{id}/声誉
  • /users/{id}/tags
  • /users/{id}/问题
  • ...等

  • 这种 API 的提供者能否允许您通过单个请求来获取所有数据?特别是如果涉及其他根类型,假设您还必须请求/revisions/{id} 和/tags 来构建页面也出于某种原因。

    需要明确的是,我不想知道是否可以在 Web API 中提供这样的功能——我想知道是否有标准的或至少记录在案的方法来这样做。

    最佳答案

    我认为我们需要一些标准的方式来做到这一点,但在那之前,你可能只能靠自己了。

    过去,当我想做跨多个资源的交易时,我也遇到过类似的挑战。我发明了新的资源,更清楚地描述了我将要执行的操作(从账户 A 中减去 5 并在账户 B 中添加 5 成为与 from 和 to 成员的交易)。

    也许可以通过使用另一个 REST 调用作为容器来应用类似(但更通用)的方法;

    POST /batchRequests { requests: [
    { method: 'POST', url: '/resource', payload: { ... } }
    ], transactional: false }

    这反过来又返回了一个包含结果的“BatchRequest”对象。这与 Facebook 所做的非常接近。

    关于rest - 结合 REST 请求和回复的约定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14636332/

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