Working on an api with jwt for different tables,my client login gives me invalid credentials error but my user login working well.this is my apilogincontroller
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Validator;
use JWTFactory;
use JWTAuth;
use App\User;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\Config;
use App\Client;
class APILoginController extends Controller
{
public function __construct(){
$this->user = new User;
$this->client=new Client;
}
public function login(Request $request)
{
\Config::set('auth.providers.users.model', \App\User::class);
$validator = Validator::make($request->all(), [
'email' => 'required|string|email|max:255',
'password'=> 'required'
]);
if ($validator->fails()) {
return response()->json($validator->errors());
}
$credentials = $request->only('email', '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(compact('token'));
}
public function signin(Request $request){
$validator = Validator::make($request->all(), [
'email' => 'required|string|email|max:255',
'password'=> 'required'
]);
if ($validator->fails()) {
return response()->json($validator->errors());
}
$credentials = $request->only('email', 'password');
try {
Config::set('jwt.user', 'App\Client');
Config::set('auth.providers.users.model',\
App\Client::class);
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(compact('token'));
}
}
i have looked for searches including stackoverflow but they all used similar code with Config::set('jwt.user', 'App\Client');
Config::set('auth.providers.users.model',\
App\Client::class);
and it worked but when i try testing login for my client on postman it gives invalid credentials error but for my user login it works perfectly.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire