Parse platform 解析Javascript平台更改密码错误
我定义了一个云代码:Parse platform 解析Javascript平台更改密码错误,parse-platform,Parse Platform,我定义了一个云代码: Parse.Cloud.define("updateUser", async (request) => { const query = new Parse.Query("User"); query.get(request.params.id, {useMasterKey:true}) .then(function(user) { user.set("username", request.params.usern
Parse.Cloud.define("updateUser", async (request) => {
const query = new Parse.Query("User");
query.get(request.params.id, {useMasterKey:true})
.then(function(user) {
user.set("username", request.params.username);
user.set("password", request.params.password);
user.set("gender", request.params.gender);
return user.save(null, {useMasterKey:true});
}).catch(function(error) {
console.error("Got an error " + error.code + " : " + error.message);
});
});
已成功更改退货。
但是,使用新密码登录移动应用程序时,密码不正确。
{“code”:101,“stack”:“Error”:无效用户名/密码}
我认为您需要返回第一个承诺。还可以尝试使用setUsername
和setPassword
。应该是这样的:
Parse.Cloud.define("updateUser", async (request) => {
const query = new Parse.Query("User");
return query.get(request.params.id, {useMasterKey:true})
.then(function(user) {
user.setUsername(request.params.username);
user.setPassword(request.params.password);
user.set("gender", request.params.gender);
return user.save(null, {useMasterKey:true});
}).catch(function(error) {
console.error("Got an error " + error.code + " : " + error.message);
});
});
您计划如何保护此功能?目前,任何人都可以更改任何用户的用户名和密码?内部使用,权限无关紧要。--\u-这是Javascript API:
setPassword(密码,选项)→ {Boolean}
调用set(“密码”、密码、选项)并返回结果。