Test refreshToken fix
This commit is contained in:
parent
2d28f1a21a
commit
595f7f97a1
@ -20,20 +20,49 @@ export default function SubscriptionSuccess() {
|
||||
const [customer, setCustomer] = useState<any | null>(null);
|
||||
|
||||
const loadSubscription = useCallback(async () => {
|
||||
const jwt = JwtService.getInstance().decodeJwt();
|
||||
const subscription = await Subscriptions.getInstance().get({ where: { office: { uid: jwt?.office_Id } } });
|
||||
if (!subscription[0]) return;
|
||||
setSubscription(subscription[0]);
|
||||
const customer = await Stripe.getInstance().getCustomerBySubscriptionId(subscription[0].stripe_subscription_id!);
|
||||
setCustomer(customer);
|
||||
try {
|
||||
const jwt = JwtService.getInstance().decodeJwt();
|
||||
if (!jwt || !jwt.office_Id) {
|
||||
console.error("No valid JWT token found");
|
||||
return;
|
||||
}
|
||||
|
||||
const subscription = await Subscriptions.getInstance().get({
|
||||
where: { office: { uid: jwt.office_Id } }
|
||||
});
|
||||
if (!subscription[0]) return;
|
||||
|
||||
setSubscription(subscription[0]);
|
||||
const customer = await Stripe.getInstance().getCustomerBySubscriptionId(
|
||||
subscription[0].stripe_subscription_id!
|
||||
);
|
||||
setCustomer(customer);
|
||||
} catch (error) {
|
||||
console.error("Error loading subscription:", error);
|
||||
}
|
||||
}, []);
|
||||
|
||||
const refreshToken = useCallback(async () => {
|
||||
CookieService.getInstance().deleteCookie("leCoffreAccessToken");
|
||||
const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
|
||||
if (!refreshToken) return;
|
||||
await JwtService.getInstance().forceRefreshToken(refreshToken);
|
||||
await loadSubscription();
|
||||
try {
|
||||
const refreshToken = CookieService.getInstance().getCookie("leCoffreRefreshToken");
|
||||
if (!refreshToken) {
|
||||
console.error("No refresh token found");
|
||||
return;
|
||||
}
|
||||
|
||||
const success = await JwtService.getInstance().forceRefreshToken(refreshToken);
|
||||
if (!success) {
|
||||
console.error("Failed to refresh token");
|
||||
return;
|
||||
}
|
||||
|
||||
// Attendre un peu pour s'assurer que le cookie est bien défini
|
||||
await new Promise(resolve => setTimeout(resolve, 100));
|
||||
|
||||
await loadSubscription();
|
||||
} catch (error) {
|
||||
console.error("Error refreshing token:", error);
|
||||
}
|
||||
}, [loadSubscription]);
|
||||
|
||||
const getFrequency = useCallback(() => {
|
||||
|
@ -23,16 +23,22 @@ export default class UserStore {
|
||||
|
||||
public async connect(accessToken: string, refreshToken: string) {
|
||||
try {
|
||||
//Save tokens in cookies
|
||||
// Assigner les tokens à l'instance
|
||||
this.accessToken = accessToken;
|
||||
this.refreshToken = refreshToken;
|
||||
|
||||
// Sauvegarder les tokens dans les cookies
|
||||
CookieService.getInstance().setCookie("leCoffreAccessToken", accessToken);
|
||||
CookieService.getInstance().setCookie("leCoffreRefreshToken", refreshToken);
|
||||
|
||||
this.event.emit("connection", this.accessToken);
|
||||
return true;
|
||||
} catch (error) {
|
||||
console.error(error);
|
||||
console.error("Error connecting user:", error);
|
||||
this.accessToken = null;
|
||||
this.refreshToken = null;
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
public async disconnect() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user