Php Restfull API在唯一调用中包含多个资源

Php Restfull API在唯一调用中包含多个资源,php,json,api,rest,laravel,Php,Json,Api,Rest,Laravel,我正在为一个论坛构建一个restfull API,我已经设置了所有控制器 这是我的设置 www.project.com/api/v1/forum/categories->返回所有类别 www.project.com/api/v1/forum/categories/{id}/discussions->返回1个类别中的所有讨论 现在的重点是,在前端,“我的论坛/类别”页面显示所有类别,但是,与大多数论坛一样,我希望添加与每个类别相关的数据—讨论的数量、上次活动的讨论等 我的问题是,什么更好,将我需要

我正在为一个论坛构建一个restfull API,我已经设置了所有控制器

这是我的设置

www.project.com/api/v1/forum/categories->返回所有类别

www.project.com/api/v1/forum/categories/{id}/discussions->返回1个类别中的所有讨论

现在的重点是,在前端,“我的论坛/类别”页面显示所有类别,但是,与大多数论坛一样,我希望添加与每个类别相关的数据—讨论的数量、上次活动的讨论等

我的问题是,什么更好,将我需要的特定数据添加到www.project.com/api/v1/forum/categories控制器,或者我应该调用资源类别和讨论,并使用我需要的前端数据进行操作

我想,如果我使用正确的方法,让api返回更多的数据可能会弥补我必须执行更多AJAX调用的事实


我希望我已经表达得足够好。

我认为最好让你的/分类终点返回所有相关数据。这使得它更加可重用,因为这意味着您不必在每次显示数据时都重新计算数据。

我认为最好让您的/categories结束点返回所有相关数据。这使得它更易于重用,因为这意味着您不必在每次显示数据时都重新计算数据。

通常更好的解决方案是发出更少的请求,因此您应该尝试使用一个请求获取所有相关数据


当然,这并不意味着您应该在类别和讨论控制器中重复讨论代码。只需创建可重用大部分代码的服务并在控制器中启动即可。

通常更好的解决方案是发出更少的请求,因此您应该尝试使用一个请求获取所有相关数据


当然,这并不意味着您应该在类别和讨论控制器中重复讨论代码。只需创建可重用大部分代码的服务,并在控制器中启动即可。

是的,我知道,但看看它的扩展性有多差。首先,我必须收集所有类别1的电话,然后在完成请求后,我必须收集每个类别的讨论10个以上的电话。我的意思是,与讨论数量、上次活动讨论等相关的总结数据也应属于/类别。那样的话,你只需要打一次电话/分类。太好了,那么我们同意了。谢谢,我明白了,但看看它有多糟糕。首先,我必须收集所有类别1的电话,然后在完成请求后,我必须收集每个类别的讨论10个以上的电话。我的意思是,与讨论数量、上次活动讨论等相关的总结数据也应属于/类别。那样的话,你只需要打一次电话/分类。太好了,那么我们同意了。谢谢