当前位置: 首页 > 知识库问答 >
问题:

响应Rest页面请求的正确方法

羊舌昆杰
2023-03-14

我想在Spring中创建一个符合REST的endpoint。endpoint应该允许分页。

请求非常简单,是否访问url/资源?页码=1

我发现了两种返回数据的大方法:

  1. 返回包含以下内容的自定义对象:
{
    "page": 1,
    "pageSize": 20,
    "content": [
         {...},
         {...}
         ...
    ]
}

此方法的问题是它不再返回资源,而是返回资源的包装器。

[
   {...},
   {...}
   ...
]

这解决了资源问题,但它使endpoint更难使用,这是违反直觉的,因为它也需要额外的工作来实现。

我想知道,什么标准被更广泛地使用,为什么?对此的“新”方法是什么?我应该远离什么?有没有一种方法可以满足这两种需求?

提前感谢!

共有1个答案

朱啸
2023-03-14

我在我使用的API中看到的最常见的做法是您使用对象包装器的第一个示例:

{
    "page": 1,
    "pageSize": 20,
    "content": [
         {...},
         {...}
         ...
    ]
}

通常,此对象包装器通过对endpoint的任何调用来实现。另一方面,当用户调用一个GET-resource/{resourceId}endpoint时,没有对象包装器。

这只是我对其他API使用情况的看法,但我已经编写了近100种不同的API集成,因此我看到了相当多的API集成。

 类似资料:
  • 假设您希望通过调用到来获取用户列表,但当前该表被截断,因此没有用户。对于这种情况,正确的反应是什么:或?

  • 什么是REST API响应结构和布局的最佳实践? Scrath示例: 成功回应: 失败响应:

  • 我是grails和groovy的新手。我正在尝试找出如何在相同的gsp中从grails控制器中的操作中呈现响应-但在gsp的不同部分-作为接受请求的gsp(在这种情况下是Web表单gsp页面)? 欢迎任何链接或turorials或直接回复“do this”。 这是我正在使用的代码。这是一个Grails应用程序,我在其中使用了一个引导模板(当然可以在互联网上免费获得)。 现在,功能的实际代码本身起作

  • 我有一个骆驼endpoint,另一个应用程序在那里发送带有一些数据的post请求(可能是通过其他路由) 我想处理这个数据,并用POST请求的响应将一些东西返回给应用程序。 这就是我的骆驼上下文现在的样子: 如何通过post请求的响应从路由sendFinData发回一些应答?

  • 本文向大家介绍django rest framework之请求与响应(详解),包括了django rest framework之请求与响应(详解)的使用技巧和注意事项,需要的朋友参考一下 前言:在上一篇文章,已经实现了访问指定URL就返回了指定的数据,这也体现了RESTful API的一个理念,每一个URL代表着一个资源。当然我们还知道RESTful API的另一个特性就是,发送不同的请求动作,会