一尘不染

如何从FirebaseAuth获取ID令牌

flutter

我正在从我的Firebase数据库中读取一些Json文件,并且尝试获取要在标头中使用的当前用户的ID令牌,如下所示:

 var response = await httpClient.get(url,headers: {'Authorization':"Bearer ${FirebaseAuth.instance.currentUser.getToken()}"});

当我执行上一行时,似乎无法获取正确的令牌,因为我无法访问数据库,但是,当我在字符串中手动包含ID令牌时,我的应用程序将按预期工作。我做错了到底是什么?


阅读 264

收藏
2020-08-13

共1个答案

一尘不染

getIdToken()返回一个Future-您必须await实际获取令牌字符串:

var token = await FirebaseAuth.instance.currentUser().getIdToken();
var response = await httpClient.get(url,headers: {'Authorization':"Bearer $token"});
2020-08-13