SignURL Laravel генерирует неправильный URL при использовании api middlware - PullRequest
1 голос
/ 02 мая 2020

У меня внешний интерфейс работает на Nuxt и Laravel в качестве внутреннего сервиса. Когда я генерирую подписанный URL-адрес с помощью промежуточного программного обеспечения API Laravel - путь включает в себя «api» в URL, в результате чего на странице Nuxt исключение не найден

Итак, вот шаги по улучшению понять, что происходит:

  1. Пользователь нажимает кнопку в приложении Nuxt и отправляет запрос ajax на Laravel API
  2. Контроллер API генерирует подписанныйURL

$signedUrl = URL::signedRoute('register', ['email' => $this->request->email, 'group_id' => $this->request->group_id], null, false);

Сгенерированный URL включает в себя «api» в пути, к которому, конечно, нет доступа http://localhost:3000/api/register?email=ss%40gmail.com&group_id=2&signature=ce4fba05bf5ccae6ea20a6043a47ca11de603238214deda7202d19f2989272cb

Есть ли способ избавиться от / api / от сгенерированного URL? Я попытался установить 4-й параметр (абсолютный) в методе SignRoute в false, но это не помогает.

1 Ответ

1 голос
/ 02 мая 2020

Маршруты API по умолчанию имеют префикс «api», как показано в вашем RouterProvider:

    protected function mapApiRoutes()
    {
        Route::prefix('api')
               ...;
    }

Когда вы генерируете подписанный URL, для вашего маршрута 'register', который использует префикс api, сгенерированный URL будет таким, как ожидалось: www.mydomain.com/api/register?...

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