Аннотация маршрутизации Symfony - PullRequest
0 голосов
/ 21 мая 2018

Я пытаюсь добавить новый маршрут на контроллере, и я столкнулся с проблемой при использовании параметра электронной почты:

use Symfony\Component\Routing\Annotation\Route;

   /**
     * @Route("/foo/{email}", methods="GET")
     *
     * @param string $email
     *
     * @return JsonResponse
     */
    public function fooAction(string $email) { 
        return JsonResponse::create('OK!');
    }

Кажется, что маршрутизация Symfony не позволяет ..

  • 127.0.0.1 [200]: / foo / test @ testcom
  • 127.0.0.1 [404]: /foo/test@test.com

Нужно ли что-то добавить, чтобы это работало?

Ответы [ 4 ]

0 голосов
/ 22 мая 2018

Вы должны решить это с помощью регулярного выражения, пытается что-то , как этот ответ

Надеюсь, это поможет!

0 голосов
/ 21 мая 2018

хорошо, это потому, что я в dev env, и я запускаю сервер, используя

php -S 127.0.0.1:8000 -t public

, используяsymfony / web-server-bundle работает

0 голосов
/ 21 мая 2018

Вам нужно, чтобы URL сначала кодировал адрес электронной почты?

0 голосов
/ 21 мая 2018

Попробуйте завершить маршрут с помощью '/'

@ Route ("/ foo / {email} /", Methods = "GET")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...