Auth :: check всегда возвращает null - PullRequest
0 голосов
/ 22 сентября 2019

Я пытаюсь заставить кнопку появляться, когда пользователь входит в систему. Если пользователь не входит в систему, кнопка не появится на странице.Поэтому первое, что мне нужно, это определить, есть ли у пользователя логин или нет.Проблема в том, что Auth :: check () продолжает возвращать ноль.Я провел исследование, согласно которому мы должны указать маршрут в промежуточном программном обеспечении Auth, но при этом пользователи должны будут войти в систему, чтобы увидеть страницу, а я этого не хочу.Я хочу, чтобы пользователи могли видеть страницу без входа в систему, и когда они войдут в систему, на той же странице появится кнопка.

Компонент

 <button v-if="showBtnDelete==true" class="btn btn-danger">Delete</button>

 <script>
      getUserType(){
            axios.get('api/gallery/getUserType').then(res=>{
            this.showBtnDelete = res.data;});
        },
 </script>

Контроллер

public function getUserType()
{
    if(Auth::check()){
        return 'true';
    }else{
        return 'false';
    }
}

Web.php

Route::group(['middleware' => ['auth']],function(){
Route::get('/add-image', function () {return view('layouts.master');});
});

Auth::routes();

Route::get('/logout','Auth\LoginController@logout');

Route::get('/', function () {
return view('home');
});

Route::get('{path?}', function () {
return view('layouts.master');
})->where('path', '[\/\w\.-]*');

Ответы [ 2 ]

1 голос
/ 22 сентября 2019

API защиты или веб


Auth::guard('api')->check();


Auth::guard('web')->check()

0 голосов
/ 22 сентября 2019

Вы возвращаете 'true' и 'false' в виде строк, которые оба возвращают true при нестрогом сравнении и false при строгом сравнении

echo 'false' == true; // true
echo 'false' === true; // false (not same data type)

И наоборот ... Сейчас Auth::check() естественно возвращает логическое значение, поэтому оператор if, else является избыточным для всех вместе ...
Вы можете использовать вспомогательный метод, чтобы использовать каждый защитный элемент при необходимости

public function getUserType()
{
   return auth()->check();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...