0

我希望能够只有一个登录屏幕。用户每次登录时都会输入用户名、电子邮件和密码。我在注册、注销然后尝试使用相同的凭据登录时遇到问题,我只是收到一条错误消息,提示用户名已被使用。如果他们给了我正确的凭据,我怎样才能让他们登录?

PFUser *user  = [PFUser user];
user.email = emailEntry;
user.username = nickNameEntry;
user.password = passwordEntry;
[user signUpInBackgroundWithBlock:^(BOOL succeeded, NSError *error)
{
    if (!error)
    {
        [MYAlertView showAlertWithTitle:@"Successful login"
                                 message:@"success"
                       cancelButtonTitle:@"OK"];
    }
    else
    {
        NSString *errorString = [[error userInfo] objectForKey:@"error"];
        [MyAlertView showAlertWithTitle:@"There was an error signing up."
                                 message:errorString
                       cancelButtonTitle:@"OK"];
    }
}];
4

1 回答 1

0

如果用户需要注册(第一次),你需要使用–signUpInBackgroundWithBlock:,就像你正在做的那样。

但是,如果他已经注册,我想你应该使用+logInWithUsernameInBackground:password:block:.

我从这个页面得到这个信息,但是,我从来没有使用过这个 SDK。

更简单的方法是:

  1. 有两个按钮,用于推动不同的视图控制器,一个用于注册,另一个用于登录
  2. 同一个表单,还有两个按钮,一个调用一个调用的方法,一个调用一个–signUpInBackgroundWithBlock:方法+logInWithUsernameInBackground:password:block:

使用第二种解决方案,问题是如果你有相同的表格,你不能在注册时询问特殊信息(姓名、出生日期等)。

编辑: 您可能想看看:

  1. PFSignUpViewControllerDelegate ,
  2. PFLoginViewControllerDelegate ,
  3. Parse API Documentation(我在上面找到了两个链接)。
于 2013-08-24T23:09:26.307 回答