Parse change user password
Parse change user password
我是Parse的新手,我正在为我的webapp使用Parse Js JDK。我想修改用户的密码。场景是这样的:用户输入旧密码,新密码&确认密码。在提交的形式,我想验证旧密码,如果正确继续设置新密码。通过使用masterKey,我尝试重置用户密码。代码如下:
Parse.Cloud.define("changePassword", function(request, response)
{
Parse.Cloud.useMasterKey();
var userId = request.params.userId;
var newPassword = request.params.password;
var oldPassword = request.params.oldPassword;
getUser(userId,oldPassword,newPassword,response);
});
function handleError(error,response)
{
response.error(error);
}
function handleSuccess(notification,response)
{
var result = {notification:notification};
response.success(result);
}
function getUser(userId,oldPassword,newPassword,response)
{
var User = Parse.Object.extend("User");
var query = new Parse.Query(User);
query.get(userId,
{
success: function(user)
{
checkOldPassword(user,oldPassword,newPassword,response);
},
error: function(user, error)
{
handleError(error,response);
}
});
}
function checkOldPassword(user,oldPassword,newPassword,response)
{
var username = user.get("username");
Parse.User.logIn(username, oldPassword,
{
success: function(logedIn)
{
changePassword(user,newPassword,response);
},
error:function(logedIn,error)
{
handleError(error,response);
}
});
}
function changePassword(user,newPassword,response)
{
Parse.User.logOut();
user.set("password",newPassword);
user.save(null,
{
success: function(userObj)
{
handleSuccess("User logged out",response);
},
error: function(userObj, error)
{
handleError(error,response);
}
});
}
不能用user.set
,必须用user.setPassword
http://parseplatform.org/Parse-SDK-JS/api/2.7.1/Parse.User.html向setPassword
相关文章:
- 解析-为什么user.getSessionToken()返回未定义的结果
- 我将如何将Base的原型分配给User
- PassportJS/忘记密码:req.user只定义一次
- User getSessionToken() Returning Undefined
- Javascript Password Page
- 在 Meteor.loginWithPassword 之后,旧用户不会离线(meteor-user-status 包)
- 如何在 Python 中从 JavaScript CryptoJS.AES.encrypt(password, pass
- 为什么Parse.User.current()为null
- 在/user/后面显示用户名的用户信息
- AngularJS和Spring后端-在AngularJS中以user.password的形式从数据库中获取密码
- Mosync Javascript NativeUI Editbox as Password field
- req.user在使用express服务器passport.js进行twitter身份验证后未定义
- 希望passport存储req.client,而不是用于承载策略的req.user
- document.getElementById(“#”).innerHTML=“”;你好"+user+&quo
- 无法使用快递和猫鼬进行路由,请继续获取"类型错误:req.params.user不是函数;
- 正则表达式 path.match(/user/);.
- 在Safari浏览器上,User.Identity.Name为空
- 错误:undefined不是对象(正在评估'$scope.inputcode.password')
- Parse change user password
- Node.js HTTP代理和域user:password授权