Postingan lainnya
Cara refresh JWT Token Laravel 5.3
Hai, saya ingin bertanya mengenai kelas "Membuat API dengan laravel", disini saya agak kebingungan saat ingin merefresh token baru, saya melakukan generate token dengan jquery pada saat login lalu menyimpannya di cookies, masalahnya setelah saya delay dalam waktu 1 - 2 jam, lalu saya refresh, maka token tidak berguna lagi.
Disini saya sudah mencoba menambahkan middleware "jwt.refresh" tapi tetap token tidak ter refresh. Mohon bantuannya.
Trims.
2 Jawaban:
Coba baca jawaban kylestev disiini https://github.com/tymondesigns/jwt-auth/issues/186 Pertanyannya mau refresh token setiap request? atau? coba tampilkan kode bagian namahin jwt.refresh nya,
Saya mau refresh token apabila telah mencapai waktu expired,
ini file api saya
Route::post('/signin', 'Api\UserController@authenticate');
Route::group(['middleware'=> ['before'=>'jwt.auth','after'=>'jwt.refresh']]], function() {
Route::post('user-create', 'Api\TeamController@store');
Route::get('user-table', 'Api\TeamController@table');
Route::delete('user-delete/{id}', 'Api\TeamController@destroy')->name('api.user-delete');
});
ini bagian signin nya mas
public function authenticate(Request $request)
{
// grab credentials from the request
$credentials = $request->only('username', 'password');
try {
// attempt to verify the credentials and create a token for the user
if ($this->hasTooManyLoginAttempts($request)) {
$this->fireLockoutEvent($request);
$secondsLeft = $this->limiter()->availableIn($this->throttleKey($request));
return response()->json(['error' => 'Too many logins attemps. wait for '.$secondsLeft.' seconds'], 400);
}
if (! $token = JWTAuth::attempt($credentials)) {
$this->incrementLoginAttempts($request);
return response()->json(['error' => 'Wrong credentials, please check again'], 401);
}
} catch (JWTException $e) {
// something went wrong whilst attempting to encode the token
$this->incrementLoginAttempts($request);
return response()->json(['error' => 'could_not_create_token'], 500);
}
// all good so return the token
return response()->json(compact('token'));
}
Mohon maaf baru bisa reply sekarang