1

我试图在 symfony2 中使用FOSRestBundle.

我有APIController一个动作getDataAction().

当我从某个外部应用程序发送请求时,这非常有效。我得到了预期的 JSON 编码数据。

但是我在同一个应用程序中也需要这些数据(即同一个应用程序中的一些其他控制器)。

哪种方法合适?

  • 创建 的对象,APIController然后对其调用所需的操作。或者
  • 或从另一个控制器发送 CURL 请求getDataAction()APIController获取数据。
4

1 回答 1

1

您可以使用路由转发从 APIController 获取数据。通过使用它,您可以在控制器中使用任何操作。不需要curl或单独的控制器对象。像这样的东西:

 $details = $this->forward('acmeRestBundle:API:getData',array('_format'=>'json'));

这将返回该操作的结果集。可能是这样的:

  content":protected]=>
  string(107181) "{}"
  ["version":protected]=>
  string(3) "1.0"
  ["statusCode":protected]=>
  int(200)
  ["statusText":protected]=>
  string(2) "OK"
  ["charset":protected]=>
  NULL
于 2013-05-03T09:16:32.713 回答