gpt4 book ai didi

node.js - 塑造 API 端点和响应

转载 作者:太空宇宙 更新时间:2023-11-04 00:14:21 25 4
gpt4 key购买 nike

你好 Stackoverflow,

我现在正在编写 API 相当长的一段时间,现在它可以与这些更大的 API 之一一起使用。开始想知道如何塑造这个 API,因为我多次在更大的平台上看到一个大实体(例如商店中的产品页面)被单独加载(我们可以看到该项目主体已加载,但评论仍在获取等。 )。

通常我所做的是将注释作为 SQL 查询中的关系附加,因此我的前端查询单个 API 端点,例如:

http://api.example.com/items/:id

它返回了所有必要的数据,例如卖家信息、照片等。

从逻辑上讲,卖家信息和照片是小块数据(例如,商品只能有 1 个卖家且不超过 10 张照片),但评论数量可能是更大的关系集合(评论作者)。

将一个端点分成 2 个独立的端点是否有意义,例如:

http://api.example.com/items/:id
http://api.example.com/items/:id/comments

这种方法有什么缺点?这是常见做法吗?或者也许我误解了一些概念?

一个缺点可能是执行了 2 个请求,但另一方面,第一个端点应该更快地返回数据(因为它比获取 n 条评论要轻),因此页面可能会显示得更快,并显示评论部分的微调器。这样我也可以对评论进行分页。

这种端点分离是否可能包含任何改进?或者也许我完全错了,应该以完全不同的方式完成?

最佳答案

我认为这是一个很好的方法,如果:

  • 一个项目的评论数量可能很大,因为通过这种方法,您可以更轻松地对其进行分页。

  • 如果您需要访问某个项目的评论,而不需要其他项目信息

我认为之前的任何条件都证明了这一决定的合理性,是的,这是常见的做法。

关于node.js - 塑造 API 端点和响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47873449/

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