Выйти в Laravel без JS - PullRequest
       1

Выйти в Laravel без JS

1 голос
/ 01 ноября 2019

текущая версия laravel использует JS для выхода из системы, когда я пытаюсь использовать приложение через отключенный браузер JS, из-за которого выдается какая-то ошибка. Я знаю, что не многие люди отключают JS, но я хочу, чтобы вместо этого мой проект полностью основывался на PHP.

Текущий код моего app.layout использует:

<li class="nav-item">
           <a class="nav-link" href="{{ route('logout') }}"
             onclick="event.preventDefault();
             document.getElementById('logout-form').submit();">
                                    {{ __('Logout') }}
           </a>
<form id="logout-form" action="{{ route('logout') }}" method="POST" style="display: none;">
@csrf
      </form>
          </li>

Я попробовал "Auth«Выход из системы» как href, поэтому, когда пользователь нажимает на кнопку «Выход», он использует функции аутентификации и выхода из системы, но когда я делаю это приложение, оно ломается и выходит из системы сразу после входа в систему! Я могу видеть только одну страницу после входа в систему, а затем выйти самостоятельно. Примечание. Моя версия laravel - 6.x, и все обновляется.

Спасибо

Ответы [ 2 ]

4 голосов
/ 01 ноября 2019

Просто поместите ссылку внутри формы

<li class="nav-item">
    <form id="logout-form" action="{{ route('logout') }}" method="POST">
        @csrf
        <button class="nav-link" type="submit">
            {{ __('Logout') }}
        </button>
    </form>
</li>

Стиль может быть не таким, но вы можете легко это исправить

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

2 голосов
/ 01 ноября 2019

использовать маршрут выхода из системы

 <form method="POST" action="{{ route('logout') }}">
      @csrf
      <button type="submit">Logout</button>
 </form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...