【问题标题】:How to Refresh automatically Token uuid in Firebase and Flutter如何在 Firebase 和 Flutter 中自动刷新 Token uuid
【发布时间】:2020-11-02 00:05:25
【问题描述】:

我在我的 Flutter 应用中使用 Firebase。所以我需要自动制作刷新令牌,无需用户知道。

我在 Flutter 中使用提供程序来使用屏幕管理。 if user!= null 进入主页,if user==null 进入登录屏幕。

当我搜索解决方案时,我在 Firebase 身份验证中读到 uuid 令牌在一小时后过期。

所以我需要在过期之前刷新令牌如何制作?

Widget build(BuildContext context) {
    // TODO: implement build
    final user =Provider.of<User>(context);

          print(user);
           getToken();

       if (user!=null){
           print('token $token');

            return Home();


       }else{
        return login();
       }
  }

这是注册功能

Future  regsiterwithemail(String email , String password )
async {
  try{
    AuthResult result =await _auth.createUserWithEmailAndPassword(email: email, password: password);
    FirebaseUser user =result.user;

 await DataBaseService(uid: user.uid,email: user.email,TitleNews:"").CreateDocumentInDataBase();

    return _userFromFirebaseUser(user);
  }catch(e){

print(e.toString());
return null;

  }



}

此登录功能

Future SigniWithEmail(String email ,String password)async {
  try{
AuthResult result=await _auth.signInWithEmailAndPassword(email: email, password:password);

FirebaseUser  user= result.user;
return _userFromFirebaseUser(user);
  }
catch(e){

    print(e.toString());
    return null;


}


}

【问题讨论】:

    标签: firebase flutter firebase-authentication


    【解决方案1】:

    Firebase 在后台自动刷新(短期)ID 令牌。您无需为此做任何事情。

    当 ID 令牌更改时,用户的 UID 不会更改。事实上,只要用户的帐户存在,用户的 ID 令牌就会保持不变。

    【讨论】:

    • 但过了一段时间后,屏幕上的小时屏幕转到登录为什么要这样做
    • 你明白我想要什么我需要 refrch Token Before expires
    • 再次:Firebase SDK 在后台自动刷新令牌。我觉得这是一个XY problem,如果关于这里实际发生的事情的信息,我们会错过很多。您在什么平台上运行此代码? _userFromFirebaseUser 是做什么的?重定向什么代码?并且基于什么条件?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-16
    • 2019-01-01
    • 2021-09-25
    • 2021-08-09
    • 2019-11-06
    • 1970-01-01
    • 2016-11-20
    相关资源
    最近更新 更多