我在一个Web服务中有一个RESTful API,其中包含用户、帖子等资源。当我请求帖子列表(GET /posts)时,我只想获取每个帖子的有限数据(例如主题、作者姓名)。当我请求具体的帖子(GET /posts/42)时,我希望获取完整的帖子对象字段列表,包括大段的帖子内容、关于点赞数和评论数的附加信息。
我想解决这个问题可能有很多方法。
在我看来,最明显的三种方法是:
1. 在每个请求上明确指定字段列表(例如
我想为我的客户构建一个清晰而有用的API。我应该选择哪种方式呢?
在我看来,最明显的三种方法是:
1. 在每个请求上明确指定字段列表(例如
/posts?fields=subject,author_name
和/posts/42?fields=subject,body,createAt,author_name,comments_count,likes_count
等)。
2. 仅在字段列表与默认字段列表不同时明确指定字段列表。
3. 如果所需字段集与默认字段集不同,则指定应从默认字段集中排除(或包含)的字段列表。我想为我的客户构建一个清晰而有用的API。我应该选择哪种方式呢?
fields=*
来获取所有字段,以便轻松查询完整集合(特别是对于想要知道或双重检查该集合的开发人员来说)。 - Lawrence Dol