Lumen-调用其他控制器方法并获得响应



为了向我的API添加批量API请求的功能,我在一个控制器中添加了一个新方法
该方法将对象数组作为输入,并调用同一控制器中的另一个方法(可能引发异常(
请参阅以下代码:

foreach ($objects as $object) {
$request = (array)$object;
$request = Request::create('/someinternalurl', 'POST', $request);
$response = app()->dispatch($request);
$responses[] = json_decode($response->getContent());
}

问题是,例如,对于10个对象,此代码大约需要15秒
此外,我还尝试搜索其他解决方案,但我找到的所有解决方案似乎都导致了
相同的响应时间或API的许多更改。

谢谢

最好直接使用方法,而不是将请求发送到相应的路由。例如:

$response = (new YourController())->yourMethod($object);

最新更新