【发布时间】:2016-06-04 14:29:30
【问题描述】:
我正在考虑使用 Firebase 制作一个 iOS 应用,我想知道如何验证注册用户的电子邮件 ID我的 iOS 应用程序?这样只有通过验证电子邮件的用户才能成为我的 iOS 应用程序的用户。
【问题讨论】:
标签: ios swift firebase firebase-authentication
我正在考虑使用 Firebase 制作一个 iOS 应用,我想知道如何验证注册用户的电子邮件 ID我的 iOS 应用程序?这样只有通过验证电子邮件的用户才能成为我的 iOS 应用程序的用户。
【问题讨论】:
标签: ios swift firebase firebase-authentication
您可以使用 sendEmailVerificationWithCompletion: 方法发送验证电子邮件,当用户登录时,您可以使用 emailVerified 属性检查验证统计信息,正如此处定义的那样...
因此,您可以决定未经验证的用户可以执行哪些操作,例如再次请求验证...
【讨论】:
在我的应用中我确实喜欢这样
[[FIRAuth auth] signInWithEmail:emailTxt.text
password:pwdStr
completion:^(FIRUser *user, NSError *error) {
// ...
NSLog(@"User: %@\nUserEmail:%@\nError:%@",user.uid,user.email,error);
NSLog(user.isEmailVerified ? @"Verified = Yes" : @"Verified = No");
[[NSUserDefaults standardUserDefaults] setObject:user.uid forKey:@"userid"];
if(error == nil){
if (user.isEmailVerified) {
self.ref = [[FIRDatabase database] reference];
NSString *userID = [FIRAuth auth].currentUser.uid;
[[_ref child:[NSString stringWithFormat:@"users/user/%@",userID]] observeSingleEventOfType:FIRDataEventTypeValue withBlock:^(FIRDataSnapshot * _Nonnull snapshot) {
// Get user value
NSLog(@"%@",snapshot.value);
// ...
} withCancelBlock:^(NSError * _Nonnull error) {
NSLog(@"%@", error.localizedDescription);
}];
}];
【讨论】: