Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony FOSRestBundle未设置_format参数_Symfony_Fosrestbundle_Symfony 2.8 - Fatal编程技术网

Symfony FOSRestBundle未设置_format参数

Symfony FOSRestBundle未设置_format参数,symfony,fosrestbundle,symfony-2.8,Symfony,Fosrestbundle,Symfony 2.8,我有以下配置: fos_rest: view: view_response_listener: 'force' formats: json: true xml: true html: false body_listener: decoders: json: fos_rest.decoder.json xml: fos_rest

我有以下配置:

fos_rest:
    view:
        view_response_listener: 'force'
        formats:
          json: true
          xml: true
          html: false
    body_listener:
        decoders:
            json: fos_rest.decoder.json
            xml: fos_rest.decoder.xml
    body_converter:
        enabled: true
    format_listener:
        enabled: true
        rules:
          - { path: '^/api', priorities: ['xml', 'json'], fallback_format: xml, prefer_extension: false }
    param_fetcher_listener: force
    routing_loader:
#        default_format: xml
        include_format: false
    serializer:
        serialize_null: true
以及以下控制器:

/**
 * @Rest\View(serializerGroups={"o-all-getCDashboard"})
 */
public function cgetAction($_format)
{
    $handler = $this->getHandler();
    die(dump($_format));

    return $handler->getAll();
}
扩展FOSRestController的类中,实现ClassResourceInterface


它总是转储
null
。如果我重新启用
default\u格式:xml
我得到的总是
xml
,尽管我发送了
Accept
标题。怎么了?为什么
格式\u侦听器不工作?

您可以使用未更正的格式\u侦听器配置。 尝试像这样使用我的配置:

fos_rest:
    body_listener: true
    param_fetcher_listener: true
    view:
        view_response_listener: 'force'

        formats:
            jsonp: true
            json: true
            xml: false
            rss: false
        mime_types:
            json: ['application/json', 'application/x-json']
            jpg:  ['image/jpeg']
            png:  ['image/png']
        jsonp_handler: ~
    routing_loader:
        default_format:  json
        include_format:  false
    format_listener:
        rules:
            - { path: /api, priorities: [ json, jsonp ], fallback_format: json, prefer_extension: true }
    exception:
        enabled: true
添加仅为您自己设置节格式和回退格式。 在我的控制器中,我使用

use FOS\RestBundle\Controller\Annotations as Rest;
use FOS\RestBundle\Controller\Annotations\RouteResource;

/**
* @RouteResource("someName")
*/
class myController extends FOSRestController implements ClassResourceInterface {

    /**
     * @param Request $request
     * @Rest\Post("/someLink")
    */
   public function insertLinkAction(Request $request) {}
}
我希望这对你有帮助