PFUser の電子メールを更新するのと同じ方法で更新を試み、obj-c コードの変換も試みました (他の質問から)。どちらも機能しませんでした。また、Cloud Code の使用方法もわかりません (まあ...インストールしましたが、Cloud Code に情報を渡す方法や JavaScript の使用方法がわかりません)。リセット メールを送信せずにユーザーのパスワードを更新する方法はありますか?
質問する
2474 次
2 に答える
8
セキュリティ上の理由から、ユーザーのパスワードをそのように変更することはできません。あなたには2つの選択肢があります
パスワードリセットメール
パスワードをリセットする Cloud Code 関数
あなたは JavaScript を知らないと思いますが、ユーザーのパスワードをリセットするために使用できるクラウド コード関数と、Swift を使用して関数を呼び出す方法を次に示します。
関数 (JavaScript):
Parse.Cloud.define("changeUserPassword", function(request, response) {
// Set up to modify user data
Parse.Cloud.useMasterKey();
var query = new Parse.Query(Parse.User);
query.equalTo("username", request.params.username); // find all the women
query.first({
success: function(myUser) {
// Successfully retrieved the object.
myUser.set("password", request.params.newPassword);
myUser.save(null, {
success: function(myUser) {
// The user was saved successfully.
response.success("Successfully updated user.");
},
error: function(myUser, error) {
// The save failed.
// error is a Parse.Error with an error code and description.
response.error("Could not save changes to user.");
}
});
},
error: function(error) {
alert("Error: " + error.code + " " + error.message);
}
});
});
上記の関数を呼び出す Swift コード:
PFCloud.callFunctionInBackground("changeUserPassword", withParameters: ["username" : "MyCoolUsername", "newPassword" : passwordField.text]) {
(result: AnyObject?, error: NSError?) -> Void in
if (error == nil) {
// result is "Successfully updated user."
}
}
幸運を!
于 2015-02-13T19:04:35.270 に答える