我正在尝试开发一个 API(基于 DoctrineMongoDBBundle 和 FOSRestBundle),它将所有空洞数据存储在 MongoDB 中,恢复它,并使用 FOSRest 显示它。
当我尝试显示存储在数据库中的对象列表时,这就是我得到的:
"message": "序列化数据不支持资源。路径:Monolog\Handler\StreamHandler -> Symfony\Bridge\Monolog\Logger -> Doctrine\Bundle\MongoDBBundle\Logger\Logger -> Doctrine\Bundle\MongoDBBundle\Logger\ AggregateLogger -> Doctrine\ODM\MongoDB\Configuration -> Doctrine\MongoDB\Connection -> Doctrine\ODM\MongoDB\LoggableCursor", "class": "JMS\Serializer\Exception\RuntimeException",
我的 FOS 的 config.yml 是这样的:
fos_rest:
param_fetcher_listener: true
body_listener: true
format_listener: true
view:
view_response_listener: force
那是我的控制器:
/**
* @Route("/services.{_format}", defaults={"_format" = "json"})
* @REST\View()
*/
public function getServicesAction($_format){
$services = $this->get('doctrine_mongodb')->getManager()
->getRepository('RadmasOpen010Bundle:Service')
->findAll();
return $services;
}
我试图返回一个格式正确的数组,并且没有显示错误,以及如果我将所有服务对象加入到一个数组中。
我尝试使用 PECL 安装 Mongo PHP 扩展来解决它,更改了一些配置,但没有任何改变。
有谁知道会发生什么?