如何从 Symfony 中的命令中调用控制器操作?

问题描述 投票:0回答:2

我正在开发一个充当 API 的应用程序。我已经实现了一个 POST 方法,用于将记录添加到应用程序中的表中。

我还有一个每天运行的命令 - 有没有办法从我的命令内部调用我的 POST API 方法?或者我只是通过应用程序 URL 调用它?

我使用的是 Symfony 3.4.6。

感谢任何建议。

php symfony post
2个回答
2
投票

您可以使用 Symfony

kernel
来执行 HTTP 请求。

您可以使用控制台的相同内核,或创建一个新内核(如果必须更改环境)。

use App\Kernel;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpKernel\HttpKernelInterface;

$kernel = new Kernel('prod', false);
$request = Request::create('/toto', 'GET');
$response = $kernel->handle($request, HttpKernelInterface::MASTER_REQUEST, false);

die($response->getContent());

(使用 Symfony 5 测试)。


© www.soinside.com 2019 - 2024. All rights reserved.