FirebaseExtended / reactfire

Hooks, Context Providers, and Components that make it easy to interact with Firebase.
https://firebaseopensource.com/projects/firebaseextended/reactfire/
MIT License
3.54k stars 403 forks source link

useIdTokenResult forceRefresh not working? #380

Open dennemark opened 3 years ago

dennemark commented 3 years ago

Version info

React: 17 experimental with suspense

Firebase: 8.6.2

ReactFire: 3.0.0-rc.0

Other (e.g. Node, browser, operating system) (if applicable):

Test case

I am using nextjs and reactfire. I am setting auth claims on one page and using the normal query, I get new claims. Afterwards I switch the page.

let token = await user.getIdTokenResult(true)
console.log(token.claims) // { claim: NewClaim }
router.push("/newpage")

Now on the new page, I can get the new claims via the above command and it shows me the new claim, too. However, using the reactfire hook, I am still getting old ones:

const { data: token} = useIdTokenResult(user, true);
console.log(token.claims) // { claim: OldClaim }

Expected behavior

Normally the useIdTokenResult should give back the updated claim.

Actual behavior

The useIdTokenResul keeps showing the old claim.

What I am trying to achieve is a claim update as described in the experimental firebase extension Auth Claims: https://github.com/FirebaseExtended/experimental-extensions/blob/next/firestore-auth-claims/POSTINSTALL.md#activating-new-custom-claims

Haqverdi commented 3 years ago

Same issue

capybarahero commented 1 year ago

Hi all, have you managed to find a solution for this issue? Unfortunately, I am experiencing the same problem using reactfire@4.2.3 and firebase@9.23.

It may be related to these other issues below:

hamiltonchua commented 6 months ago

I am seeing this as well with latest version v4.2.3