gpt4 book ai didi

rest - 如何在 REST 服务中命名自定义端点

转载 作者:行者123 更新时间:2023-12-02 01:30:40 28 4
gpt4 key购买 nike

我正在尝试了解如何使用 REST 端点正确实现微服务模式。

我了解它的基础知识。互联网上到处都是。典型例子:

class User
{
public User GetUser(int id) { ... }
public User GetUsers() { ... }
public User PutUser(User user) { ... }
public User PostUser(User user) { ... }
}

因此,如果我想要一个 User,那么我会向 GetUser(100) 发出一个 GET 请求,它会返回一个 User 对象作为 JSON。

但假设我有一个页面,我想在其中列出所有用户的 firstnamelastname。然后我可以向 GetUsers() 发出 GET 请求。但是,如果 User 表在数据库中有 100 列,而我只需要显示两列(名字,姓氏),那么将其他 98 列与

也许在另一个页面上我需要显示 100 列中的 40 列。在其他一些页面上,100 列中的 20 列。

所以这意味着我需要 3 个额外的端点来返回所有用户。但是每个端点应该返回不同的数据。

  1. 我如何命名这些新端点?
  2. 我是否必须明确地按名称调用这 3 个端点? (例如:GetUsersNames() GetUsersAge() 等?)

附言。这可能是一个糟糕的例子,但我希望你能理解我的意思。当我超出默认的 GET/PUT/POST/DELETE 方法时,我不知道该做什么/如何命名端点。

最佳答案

您可以做的是明确要求特定字段,因此:

GET /api/users/?fields=firstName,lastName

这比引入新端点要好得多。

关于rest - 如何在 REST 服务中命名自定义端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34353157/

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