mercredi 26 octobre 2016

Laravel manual auth - Never works

I am trying to make Auth for an API Rest manually, but the response for Auth::attempt is always false.

Route

Route::group(["prefix"=>"api"], function(){
    Route::post('/login', [
        'as'    =>  'checkLogin',
        'uses'  =>  'LoginCtrl@checkLogin'
    ]);
});

Controller

class LoginCtrl extends Controller
{
    public function checkLogin(Request $request){
        $input = $request->all();
        if(Auth::attempt(['username' => $input['user'], 'password' => $input['password']])){
            $data = ["response"=>true,"access_token"=>"test"];
        }else{
            $data = ["response"=>false,"access_token"=>"none"];
        }
        return response()->json($data);
    }
}

I have userd Hash::make to encrypt the password on the user creation.

My model is:

namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable
{
    protected $table = "usuarios";
    protected $username = 'username';

    protected $fillable = [
        'name', 'username', 'password'
    ];

    protected $hidden = [
        //'password', 'remember_token',
    ];

    public $timestamps = false;

    public function access_token(){
        return $this->hasOne('App\AccessToken');
    }
}

What am I doing wrong?



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire