我需要实现这个,我想要检查两次,电子邮件和用户名,所以,我想如果我做一个正常的查询并检查两次,确实有效,但这是一个错误,因为当我试图检查密码字段时,它是一个问题.
我从解析博客看到了这个答案,但这不是我需要的.我认为是可能的.
解决方法:
根据您的原始问题和评论,这是我建议的.您似乎想要让用户输入电子邮件或用户名以及他们的密码来登录.您的数据库需要这两个字段都是唯一的.
如果你有Parse,我仍然不清楚为什么你使用一个单独的User表,但是,假设你只是使用Parse User对象,我们继续.
在Parse中,您需要以标准方式注册用户
ParseUser user = new ParseUser();
user.setUsername("my name");
user.setPassword("my pass");
user.setEmail("email@example.com");
user.signUpInBackground(new SignUpCallback() {
...
});
Parse will automatically check that the email and username are unique给你.
然后,要使用用户名或电子邮件登录,您需要在登录前编写一些查询.这将交换电子邮件的用户名,然后使用用户输入的用户名和密码登录.
// If the entered username has an @, assume it is an email
String username = "bob@example.com";
if (username.indexOf("@")) {
ParseQuery<ParseUser> query = ParseUser.getQuery();
query.whereEqualTo("email", username);
query.getFirstInBackground(new GetCallback<ParSEObject>() {
public void done(ParSEObject object, ParseException e) {
if (object == null) {
Log.d("score", "The getFirst request Failed.");
} else {
String actualUsername = object.get("username");
ParseUser.logInInBackground(actualusername, "showmethemoney", new LogInCallback() {
...
});
}
}
});
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。