Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/112.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 给定用户UID,我可以访问他的个人资料信息吗?_Ios_Firebase_Firebase Realtime Database_Firebase Authentication - Fatal编程技术网

Ios 给定用户UID,我可以访问他的个人资料信息吗?

Ios 给定用户UID,我可以访问他的个人资料信息吗?,ios,firebase,firebase-realtime-database,firebase-authentication,Ios,Firebase,Firebase Realtime Database,Firebase Authentication,我知道我可以将用户信息保存到他的。但我想知道,当我只有一个UID时,我是否能得到同样的信息 据我所知,我只能这样做来获取信息: Auth.auth().currentUser.displayName... 似乎如果我想获取其他用户的信息,我就必须在用户节点中保留他们数据的副本 我说得对吗?或者我可以访问他们的个人资料信息而不必保留副本吗?如果使用firebase身份验证,则可以检索当前用户信息。因此,如果当前用户X已登录并且已通过身份验证,则可以检索有关他的以下信息: let user = A

我知道我可以将用户信息保存到他的。但我想知道,当我只有一个UID时,我是否能得到同样的信息

据我所知,我只能这样做来获取信息:

Auth.auth().currentUser.displayName...
似乎如果我想获取其他用户的信息,我就必须在用户节点中保留他们数据的副本


我说得对吗?或者我可以访问他们的个人资料信息而不必保留副本吗?

如果使用firebase身份验证,则可以检索当前用户信息。因此,如果当前用户X已登录并且已通过身份验证,则可以检索有关他的以下信息:

let user = Auth.auth().currentUser
if let user = user {
  // 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 getTokenWithCompletion:completion: instead.
  let uid = user.uid
  let email = user.email
  let photoURL = user.photoURL
  // ...
}
如果要检索其他用户的信息,则需要使用firebase数据库:

users
  userId (firebase authentication)
    name : user X
  userId
    name : user Y

如果我必须保留一份所有数据的副本,那么在成本和性能方面,它是否会比不使用Firebase特定的配置文件存储点更高效?因为我可以从那个用户节点获取?还是我错了?当用户注册后,您将其添加到firebase身份验证中,用户的数据和密码将在那里得到保护。在firebase数据库中添加用户时,不应在其中添加密码。所以,实际上两者都是需要的。如果你需要应用程序中的用户列表,那么你需要数据库。如果您想要身份验证并能够轻松使用登录提供商,那么您需要firebase身份验证。是的,我理解这一点,但我想知道是否应该在fire auth中保留所有ProfileImage的副本。。。正如我之前所说的,在检索方面更有效吗?在Auth中,您将拥有imageurl。您可以将图像存储在Firebase存储中,并将url保存在auth中。两者都是必需的,不会影响速度。