step 23 : fix check isTokenExpired > 3 menit refreshToken
This commit is contained in:
@@ -141,50 +141,19 @@ class NoLoginRefreshTokenNotifier
|
||||
expire_date: expire_date,
|
||||
);
|
||||
|
||||
print("📌 Token diperbarui: ${resp.token}");
|
||||
print("📌 Expire date dari API: ${resp.expire_date}");
|
||||
|
||||
// Cek apakah expire_date dari API null atau kosong
|
||||
if (resp.expire_date == null || resp.expire_date.isEmpty) {
|
||||
print("❌ Error: expire_date dari API kosong!");
|
||||
return;
|
||||
}
|
||||
|
||||
// Konversi format expire_date ke ISO 8601
|
||||
String expireDateStr = resp.expire_date.replaceFirst(" ", "T");
|
||||
|
||||
// Validasi apakah expire_date dapat dikonversi ke DateTime
|
||||
try {
|
||||
DateTime parsedExpireDate = DateTime.parse(expireDateStr);
|
||||
print("✅ expire_date berhasil dikonversi: $parsedExpireDate");
|
||||
} catch (e) {
|
||||
print("❌ Error parsing expire_date: $e");
|
||||
return;
|
||||
}
|
||||
|
||||
// Simpan token ke SharedPreferences
|
||||
final shared = await SharedPreferences.getInstance();
|
||||
|
||||
// await shared.setString("expire_date", expireDateStr);
|
||||
print("✅ expire_date berhasil disimpan: $expireDateStr");
|
||||
|
||||
final tokenData = jsonEncode({
|
||||
"expire_date": resp.expire_date,
|
||||
"host": host,
|
||||
"date": DateTime.now().toString(),
|
||||
"token": resp.token,
|
||||
"client_id": resp.client_id,
|
||||
"expire_date": expireDateStr,
|
||||
"isLogin": resp.isLogin,
|
||||
});
|
||||
|
||||
await shared.setString(Constant.bearerName, tokenData);
|
||||
print("✅ Token data berhasil diperbarui: $tokenData");
|
||||
|
||||
// Cek ulang apakah expire_date berhasil disimpan dengan benar
|
||||
String? cekExpireDate = shared.getString("expire_date");
|
||||
print(
|
||||
"📌 expire_date yang tersimpan di SharedPreferences: $cekExpireDate");
|
||||
|
||||
ref.read(noLoginCurrentUserProvider.notifier).state = resp;
|
||||
state = NoLoginRefreshTokenStateDone(model: resp);
|
||||
} catch (e) {
|
||||
|
||||
Reference in New Issue
Block a user