Symfony2 AuthenticationCredentialsNotFoundException @Route

时间:2016-03-10 18:06:52

标签: php symfony namespaces

enter image description here

  

classes.php第2876行中的AuthenticationCredentialsNotFoundException:

     

令牌存储不包含身份验证令牌。一种可能   原因可能是没有为此URL配置防火墙。

我尝试了Stack Overflow,GitHub和Google上的所有内容。没有任何效果。

获得的经验教训:始终检查日志文件。

tail -f app/logs/dev.log

发现这个:

  

... [语义错误]注释\" @Route \"在方法中   橱柜\ TumorNextAPIBundle \控制器\ DefaultController ::的indexAction()   从未进口过。您是否忘记添加\"使用\"声明   这个注释?...

我错过了以下使用陈述:

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;

在以下代码中:

<?php

namespace Ambry\TumorNextAPIBundle\Controller;

use Symfony\Component\HttpFoundation\Request;

use Ambry\BioToolsBundle\Controller\ApplicationController;

class DefaultController extends ApplicationController
{
    /**
     * @Route("/", name="tumornext" )
     * @Method({"GET","POST"})
     * @Template
     */
    public function indexAction(Request $request)
    {
        return array();
    }
}

1 个答案:

答案 0 :(得分:1)

获得的经验教训:始终检查日志文件。

tail -f app/logs/dev.log
tail -f app/logs/dev.log | grep CRIT
tail -f app/logs/dev.log | grep ERROR
tail -f app/logs/dev.log | grep INFO

在这种情况下,您缺少使用声明:

use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Method;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template;