6

当我去:http://mysite.com/web/app_dev.php/user/register

我正进入(状态:

MethodNotAllowedHttpException: No route found for "GET /user/register": Method Not Allowed (Allow: POST) 

这是我的代码:

MainUserBundle_register:
    pattern:  /user/register/
    defaults: { _controller: MainUserBundle:UserAuthWebService:register, _format:json}
    requirements:
        _method:  POST

我的控制器是:

 public function registerAction($email="test", $username="test", $password="test123")
    {


       //some code

    }

为什么?

4

1 回答 1

11

您可以将路由限制为仅匹配给定的 HTTP 方法。在您发布的代码中,路由只会匹配POST请求。您将需要同时允许POSTandGET或删除该要求。

MainUserBundle_register:
    pattern:  /user/register/
    defaults: { _controller: MainUserBundle:UserAuthWebService:register, _format:json}
    requirements:
        _method:  POST|GET

http://symfony.com/doc/current/book/routing.html#adding-http-method-requirements

于 2012-06-28T19:09:17.153 回答