CakePHP-为许多API调用建模的最佳方式


CakePHP - best way to model a number of API calls

我正忙于一个项目,该项目涉及调用其他九个站点的API。这个数字预计未来会增加,API的实际方法也会有所不同(SOAP或XML)。

每个网站都需要模块化的规范,这样我的客户就可以向他们出售我们的API(然后他们可以将其提供给其他聚合商)。

我过去完成过很多Cake项目,但所有这些都是数据库驱动的。有人能告诉我们最好的方法是什么吗?

目前我正在考虑让每一个API都成为一个插件。我将把API调用放在一个模型中(不附加到数据库表),然后剩下的调用将自然跟随。因为每个API的实际视图会有所不同,所以我无法使用公共控制器或视图(我们使用的每个公司API都有不同的业务规则)。

有人能告诉我这种方法听起来是否合理,或者我偏离了轨道吗?

谢谢,Andy

也许在根应用程序中可以扩展AppModel。用于基于Soap-based API调用的SoapModel和用于基于REST-based调用的RestModel等。

然后,在每个插件中,您可以使模型扩展用于基本通信的适当类,然后您只需要处理这些模型中特定于站点的业务规则。这个额外的抽象层可以很好地隐藏WS实现的细节。

如果你走胖模型的路线,你甚至不一定需要把这些插件分成插件。只有当您想要自包含某种"子应用程序"并使其在其他Cake应用程序中可重用时,插件才特别有用。