2016-12-10 4 views
1

Я следовал Laravel 5.3 upgrade guide, в котором говорится, что добавить unauthenticated метод в App\Exceptions\Handler.Laravel 5.3 unauthorized() AuthenticationException фатальная ошибка

Однако, я получаю следующее сообщение об ошибке, когда она вызывается системой Auth:

FatalThrowableError in Handler.php line 59: Type error: Argument 2 passed to App\Exceptions\Handler::unauthenticated() must be an instance of App\Exceptions\AuthenticationException, instance of Illuminate\Auth\AuthenticationException given, called in /Users/Username/Development/ProjectName/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php on line 135

Я искал последние полчаса и не смогли найти решение.

Любая помощь?

+0

Либо добавьте 'use App \ Exceptions \ AuthenticationException;' в начале файла, который использует 'AuthenticationException', либо измените' AuthenticationException' на '\ App \ Exceptions \ AuthenticationException', где вы используете его внутри своего кода. –

+0

Я не создал класс аутентификацииException (мне это не нужно, и руководство по обновлению Laravel не упоминало об этом), оно должно быть предоставлено самим Laravel. – Alan

+0

Можете ли вы проверить 'app/Http/Kernel.php', если связующее ПО' can' указывает на '\ Illuminate \ Auth \ Middleware \ Authorize :: class', определенные в массиве' protected $ routeMiddleware', подобном этому ''can' = > \ Illuminate \ Auth \ Middleware \ Authorize :: class'? –

ответ

2

Проверьте, как ваш файл handler.php сравнивает с 5,3 ветви версии здесь: https://github.com/laravel/laravel/blob/5.3/app/Exceptions/Handler.php

Примечания метод неаутентифицированного() в handler.php ожидающей экземпляр \Illuminate\Auth\AuthenticationException. Убедитесь, что use Illuminate\Auth\AuthenticationException; включен в начало файла.

+0

Это было совсем другое! Мой плохой, я все еще новичок в Ларавеле. Обновление исправлено. Спасибо, Джон! – Alan

Смежные вопросы