我将ParseSDK更新为1.7.5,并将ParseFacebookUtilsV4(1.7.5)更新为 然后我们的一些用户无法像这样保存PFObject。
PFObject* post = [PFObject objectWithClassName:@"PostData"];
PFUser* user = [PFUser currentUser];
[post setObject:user forKey: @"user"];
...
[post saveInBackgroundWithBlock: ^(BOOL success, NSError *error){
if ( !success || error != nil ){
....
}
}];
返回错误"用户对象不允许其他用户写入"。
用户使用Facebook登录并在先前版本的Parse SDK中使用
(在Facebook SDK 4.0之前)。
即使用户删除了应用并重新安装,也会出现同样的错误
用户在ParseSDK 1.7.5之后就不会注册
要使用Facebook登录,我就是这样做的
[PFFacebookUtils logInInBackgroundWithReadPermissions: @[ @"public_profile", @"user_friends", @"email" ] block:^(PFUser *user, NSError *error){
}];
当我注释掉将用户添加到PFObject时,它成功了。
请给我一些建议
谢谢。
注意:对于快速修复,我停止在客户端添加用户,并使用CloudCode
Parse.Cloud.beforeSave( "PostData", function(request, response) {
Parse.Cloud.useMasterKey();
var user = request.user;
var obj = request.object;
obj.set("user", user);
response.success();
});
它有效......