我在执行某项功能时遇到了一些麻烦,因为我一直收到与我没有提供的masterKey有关的错误:
[PFCloud callFunctionInBackground:@"changeUserModeratorStatus" withParameters:@{@"objectId": self.objId}];
功能:
Parse.Cloud.define("changeUserModeratorStatus", function(request, response) {
Parse.Cloud.useMasterKey();
var query = new Parse.Query(Parse.User);
query.equalTo("objectId", request.params.objectId);
query.first({
success: function(anotherUser) {
anotherUser.set("ModeratorStatus", "Approved");
anotherUser.save(null, {
success: function(anotherUser) {
response.success("Successfully updated user.");
},
error: function(failedRetrieve, error) {
response.error("Could not save changes to user.");
}
});
},
error: function(error) {
response.error("Could not find user.");
}
});
});
编辑,我在论坛上复制/粘贴Hectors示例,检查文档并找不到解决方案。无论我做什么,我都会收到错误:无法使用万能钥匙,未提供
答案 0 :(得分:3)
您可能在初始化云代码时遗漏了主密钥 -
Parse.initialize(applicationId, javaScriptKey, masterKey).
取出整个初始化为我解决了问题,因为Parse
实际上使用您的application id
,JavaScript key
和master key
初始化了您的云代码,因此您不必做到这一点。