2016-01-18 17 views
1

Я работаю над приложением, которое будет работать с интерфейсом на базе Laravel и на основе laravel + angularJs.Пользовательская аутентификация в Laravel 5 + AngularJs Without JWT

Я закончил около 40% в back-end, теперь мне нужно реализовать интерфейс, но я не получаю best practice.

Я пробовал с помощью страницы входа, но я не могу получить errors and responses в json. Я проверил в запросе, он показывает мне страницу входа с ошибкой в ​​ответ.

Я много искал для этого и нашел для этого решение JWT.

Есть ли другой способ сделать это, чтобы я мог получить ответы и ошибки в json?

ответ

1

Ваше название говорит о том, что вы не хотите с помощью JWT, потому что вы не можете поймать исключения :-)

Вы должны абстрагироваться ваша проблема, или лучше: конвертировать его вызов.

Давайте начнем:

Пакет JWT имеет различные исключения, например, маркер в черном списке, enz. Итак, какова ваша задача? Чтобы поймать это исключение! Да, и что? Да, вы можете вернуть этот json к своему мнению.

Ниже хороший пример с сайта JWT

public function getAuthenticatedUser() 
{ 
    try { 

     if (! $user = JWTAuth::parseToken()->authenticate()) { 
      return response()->json(['user_not_found'], 404); 
     } 

    } catch (Tymon\JWTAuth\Exceptions\TokenExpiredException $e) { 

     return response()->json(['token_expired'], $e->getStatusCode()); 

    } catch (Tymon\JWTAuth\Exceptions\TokenInvalidException $e) { 

     return response()->json(['token_invalid'], $e->getStatusCode()); 

    } catch (Tymon\JWTAuth\Exceptions\JWTException $e) { 

     return response()->json(['token_absent'], $e->getStatusCode()); 
    } 
} 

Описанный выше метод возвращает JSON. Чтобы отобразить эту информацию в вашем представлении, это проблема AngularJS, а не проблема JWT.

+0

Спасибо за ваше предложение, но я ищу какие-либо встроенные функции в laravel 5, используя, чтобы я мог получить все ошибки и ответы в json-форме, если это возможно. Я не хочу использовать для этого сторонний инструмент :) –