【发布时间】:2019-07-18 10:25:49
【问题描述】:
在他们提到的这段代码 sn-p (firebase doc) 中,不要使用 user.getUid() 与您的后端服务器进行身份验证。请改用 FirebaseUser.getToken()。
FirebaseUser user = FirebaseAuth.getInstance().getCurrentUser();
if (user != null) {
// Name, email address, and profile photo Url
String name = user.getDisplayName();
String email = user.getEmail();
Uri photoUrl = user.getPhotoUrl();
// The user's ID, unique to the Firebase project. Do NOT use this value to
// authenticate with your backend server, if you have one. Use
// FirebaseUser.getToken() instead.
String uid = user.getUid();
}
getUid() A unique user ID, intended as the user's unique key across all providers.
getToken() The Firebase authentication token for this session.
我的要求是。
- 首先,我将使用 Firebase 身份验证方法(电子邮件和密码)注册用户。
- 我会保存 String uid = user.getUid();注册成功后在我自己的后端服务器中。
- 用户信用信息显示用户余额作为密钥 user.getUid() 保存在我自己的后端服务器中。
- 用户使用电子邮件和密码登录并询问余额。
- 我将从 firebase 获取 user.getUid() 并与我的记录匹配,如果找到的匹配将余额返回给用户。
他们说 getUid() 是唯一的用户 ID,但不要使用此值与您的后端服务器进行身份验证。
为什么会这样?为什么我们不能使用 getUid() 与您的后端服务器进行身份验证??
【问题讨论】:
-
您找到问题的答案了吗?我正计划做同样的事情,我在我们的思考过程中没有发现问题