0

私はWebサービスを実装するためにsymfony 2.2.3withを使用しています。FOSRestBundleRestful

これが私のコードですが、次のURLを起動すると、次のエラーが発生します

No route found for "GET /business/john"

ここにコントローラーコードがあります

use FOS\RestBundle\Controller\Annotations as Rest;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\JsonResponse;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

use Symfony\Component\Security\Core\Exception\AccessDeniedException;

use FOS\RestBundle\Controller\FOSRestController;
use FOS\RestBundle\Routing\ClassResourceInterface;

class BusinessController extends Controller {


        public function getBusinessAction($para){


          return new JsonResponse(array('name' => $para));
        } 

}

これが私のURLです

http://localhost/symfony/web/app_dev.php/business/john

これが私のルートです

URLと関数から引数を削除すると機能getBusinessActionしますが、引数/では機能しません

_business:
    resource: "@HubHomeBundle/Controller/BusinessController.php"    
    type: rest

アップデート

中身app/confing/routing.yml

   hub_home:
    resource: "@HubHomeBundle/Resources/config/routing.yml"
4

1 に答える 1

1

念のために言っておきますが、これは HubHomeBundle/Resources/config/routing.yml からですか?

_business:
    resource: "@HubHomeBundle/Controller/BusinessController.php"    
    type: rest

その場合は、編集して次のように変更してみてください。

_business:
    resource: HubHomeBundle\Controller\BusinessController   
    type: rest

「resource」タグの値は、ファイルへのパスではなく、コントローラ クラスの完全修飾名である必要があります

于 2013-10-02T13:10:00.950 に答える