Je lis certains fichiers Json de ma base de données Firebase et j'essaie d'obtenir un jeton ID pour l'utilisateur actuel à utiliser dans l'en-tête comme suit:
var response = await httpClient.get(url,headers: {'Authorization':"Bearer ${FirebaseAuth.instance.currentUser.getToken()}"});
lorsque je fais la ligne précédente, il semble qu'elle n'obtienne pas le jeton correct car je ne peux pas accéder à la base de données, cependant, lorsque j'inclus manuellement un jeton ID dans la chaîne, mon application fonctionne comme prévu. Qu'est-ce que je fais exactement mal?
getIdToken()
renvoie un Future
- vous devez le await
pour obtenir réellement la chaîne de jeton:
var token = await FirebaseAuth.instance.currentUser().getIdToken();
var response = await httpClient.get(url,headers: {'Authorization':"Bearer $token"});
U peut également récupérer le jeton id de l'objet window comme ceci:
const idToken = window.gapi.auth2.getAuthInstance().currentUser.get().getAuthResponse().id_token