gpt4 book ai didi

java - 任何众所周知的 Java 库,仅返回 REST API 请求的字段

转载 作者:行者123 更新时间:2023-12-02 09:20:07 27 4
gpt4 key购买 nike

正在为 Spring boot 应用程序寻找一个著名的 java 库,其中 GET api 返回一个相当大的资源列表。为了减少响应的大小,约定之一是仅在响应中包含请求的字段。

示例,

GET /v1/users/

{
"data" :
{
[
{
"name" : "User1",
"phone" : "800-999-9999",
"city" : "XYZ1",
"country" : "PQR1"
},
{
"name" : "User2",
"phone" : "800-999-9999",
"city" : "XYZ2",
"country" : "PQR2"
}
]
}
}

对于更轻版本的响应,当字段作为查询参数传递时

GET /v1/users/?fields=name,city

{
"data" :
{
[
{
"name" : "User1",
"city" : "XYZ1"
},
{
"name" : "User2",
"city" : "XYZ2"
}
]
}
}

了解更多信息“Teach a dog to REST”。提到了 linkedIn、facebook、twilio 等的一些做法。

我遇到了“https://github.com/monitorjbl/json-view”。但被团队击落。

有人知道这方面的开源许可项目吗?使用java spring微服务的组织如何实现这个功能?谢谢!

最佳答案

这是 API 设计的难点之一。您需要在使其足够通用以支持多个用例而不添加很少需要的信息之间找到正确的权衡。一种可能性是创建另一个端点。然而,这可能会导致大量端点和糟糕的 API 设计。

我不太清楚您的用例,但您可以查看 GraphQL 而不是 REST 。在 GraphQL 中,客户端基本上告诉服务器它想要接收什么信息。

除此之外,stackoverflow 上已经有一些帖子可能会有所帮助:

关于java - 任何众所周知的 Java 库,仅返回 REST API 请求的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58755924/

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