为API调用正确使用Laravel程序逻辑


Correct use of Laravel program logic for an API call?

我正在编写一个翻译器API,它将根据请求的服务调用各种其他API来执行翻译。我想我应该把它放在一个控制器中,但如果我需要从另一个控制器或视图中访问翻译器类呢?

我应该把它的一部分放进模型中吗?

为了提高速度,如果是内部请求,我不想像使用Request::create()调用外部URL那样调用服务。

这样的事情在某种程度上是可行的,但我觉得应该有一种更优雅的方式来做到这一点。

{{ App::make('TranslatorController')->show($text, $to, App::getLocale()); }}

根据要求,以下是答案!

我建议,编写单独的类/接口、服务提供商和门面。实现每个翻译服务/API的接口。并根据请求将接口动态绑定到服务,或者您甚至可以编写一个Laravel包,它当然对多个项目有用,并允许您访问任何地方。

希望这能有所帮助!