2016-10-11 36 views
1

私はLaravel 5の認証用のカスタムモデルクラスを作成しました。私はすでにUserクラスを表すauth.phpjwt.phpの属性を変更しました。Laravel 5のJWTカスタム認証

JWTは動​​作していますが、ログインしようとすると、データベースに登録されていても無効な認証エラーが返されます。

私は暗号化に関する何かであるべきだと考えていたので、パスワードを暗号化しようとしましたが、DBのハッシュパスワードフィールドを更新しました(まだ暗号化されていませんでした)。しかし、それはまだ私に資格エラーをもたらす。

<?php 

namespace App\Http\Controllers; 

use Illuminate\Http\Request; 

use App\Http\Requests\AuthRequest; 
use App\Http\Requests; 
use JWTAuth; 
use Tymon\JWTAuth\Exceptions\JWTException; 

class AuthController extends Controller 
{ 
    public function login(AuthRequest $request) { 
     $credentials = [ 
      'email' => $request->input('email'), 
      'password' => bcrypt($request->input('password')) 
     ]; 

     try { 
      if (! $token = JWTAuth::attempt($credentials)) { 
       return response()->json(['error' => 'invalid_credentials'], 401); 
      } 
     } catch (JWTException $e) { 
      return response()->json(['error' => 'could_not_create_token'], 500); 
     } 

     return response()->json(['token' => $token]); 
    } 
} 

誰かがこの問題を解決する方法を知っていますか?

答えて

0

私はこれを解決しました。私の保存されたパスワードと私のパラメータパスワードの間に問題がありました。私はbcryptを外し、フィールドをデータベースに暗号化して置いた。