I am new to Laravel
. I have just started learning Laravel
passport integration using this reference link.
Below is my route file api.php
Route::post('login', 'API\PassportController@login'); // this is working fine
Route::post('register', 'API\PassportController@register'); // this is working fine
Route::group(['middleware' => 'auth:api'], function(){
Route::post('get-details' , 'API\PassportController@getDetails'); // This is giving me error
});
PassportController.php >> getDetails()
function code,
/**
* details api
*
* @return \Illuminate\Http\Response
*/
public function getDetails()
{
$user = Auth::user();
return response()->json(['success' => $user], $this->successStatus);
}
config/auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'passport',
'provider' => 'users',
],
],
I have updated rest of the files as mentioned in the article.
Registration and login APIs are working fine but when I try to run /get-details
api, I am getting {"message":"Unauthenticated."}
in response.
In the headers I am passing values like below,
Strange thing is that same code is working fine at my localhost server (OS- Windows) but when I run this API on my hosting server (OS- ubuntu) then it does not work.
Could anyone help me in resolving this issue? Is this related to server configuration settings? I am even not able to debug this code to check where I am doing wrong.
Thanks in advance!!
Did u pass the api token in header. If not , first you have to pass login details to api and get the api token. Then pass this token to the request , which u r trying to ac ess . Another possibility is u need to run the Passport install command again if ur environment change from local to live
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With