BirdMan
02/26/2023, 4:38 AMrp
02/26/2023, 5:36 AMBirdMan
02/26/2023, 6:04 AMconst sessionExists = await Session.doesSessionExist();
if (sessionExists) {
const user_id = await Session.getUserId();
const userDetails = await getUserDetails();
}
getUserDetails
calls the netlify function.
Is there a cleaner way to do this?rp
02/26/2023, 6:06 AMBirdMan
02/26/2023, 6:22 AMrp
02/26/2023, 6:35 AMBirdMan
02/26/2023, 6:53 AMrp
02/26/2023, 6:54 AMBirdMan
02/26/2023, 7:02 AMSession.attemptRefreshingSession();
- what's the best way to get updated metadata? Metadata in payload is still outdated.export const refreshSession = async function() {
await Session.getAccessToken();
let sessionExists = await Session.doesSessionExist();
if (sessionExists) {
let user_id = await Session.getUserId();
let accessTokenPayload = await Session.getAccessTokenPayloadSecurely();
const { metadata } = await getUserDetails();
user.set({
id: user_id,
phone_number: accessTokenPayload.phone_number,
metadata: metadata
});
}
};
Currently have this, but if you refresh page it won't use the updated metadatarp
03/02/2023, 4:25 AMBirdMan
03/02/2023, 4:31 AMrp
03/02/2023, 4:32 AMBirdMan
03/02/2023, 4:43 AMrp
03/02/2023, 4:51 AMBirdMan
03/02/2023, 4:53 AMexport const refreshSession = async function() {
const { metadata } = await getUserDetails();
await Session.attemptRefreshingSession();
let sessionExists = await Session.doesSessionExist();
if (sessionExists) {
let user_id = await Session.getUserId();
let accessTokenPayload = await Session.getAccessTokenPayloadSecurely();
user.set({
id: user_id,
phone_number: accessTokenPayload.phone_number,
metadata: accessTokenPayload.metadata
});
}
};
so getUserDetails is a netlify function that gets updated metadata and merges into access token. Then I am refreshing session and updating my front end storerp
03/02/2023, 5:29 AMBirdMan
03/03/2023, 6:40 AM