Parse (iOS):除非用户已通过登录或注册进行身份验证,否则无法删除用户
Posted
技术标签:
【中文标题】Parse (iOS):除非用户已通过登录或注册进行身份验证,否则无法删除用户【英文标题】:Parse (iOS): User cannot be deleted unless they have been authenticated via logIn or signUp 【发布时间】:2015-01-27 23:06:20 【问题描述】:我仅在使用 saveEventually (ios 8) 时试验此错误,并且我正在修改的对象 不是 PFUser:
var myObj = PFObject(className: "MyClass")
myObj["val"] = 100
myObj.saveEventually()
'NSInternalInconsistencyException', reason: 'User cannot be deleted unless they have been authenticated via logIn or signUp'
*** First throw call stack:
(
0 CoreFoundation 0x0000000107182f35 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x0000000109510bb7 objc_exception_throw + 45
2 CoreFoundation 0x0000000107182e6d +[NSException raise:format:] + 205
3 AAA 0x0000000105a7a85c -[PFUser(Private) checkDeleteParams] + 71
4 AAA 0x0000000105a3b6e9 -[PFObject(Private) _constructDeleteCommand:sessionToken:] + 81
5 AAA 0x0000000105a45c5c -[PFPinningEventuallyQueue _commandWithIdentifier:error:] + 147
6 AAA 0x0000000105a71b7b -[PFEventuallyQueue _runCommandsWithRetriesCount:] + 951
7 libdispatch.dylib 0x0000000109cb57f4 _dispatch_client_callout + 8
8 libdispatch.dylib 0x0000000109cac09a _dispatch_source_latch_and_call + 852
9 libdispatch.dylib 0x0000000109ca46d2 _dispatch_source_invoke + 412
10 libdispatch.dylib 0x0000000109c9d9ae _dispatch_queue_drain + 1045
11 libdispatch.dylib 0x0000000109c9d432 _dispatch_queue_invoke + 235
12 libdispatch.dylib 0x0000000109c9ffc1 _dispatch_root_queue_drain + 685
13 libdispatch.dylib 0x0000000109ca15d9 _dispatch_worker_thread3 + 111
14 libsystem_pthread.dylib 0x000000010a039637 _pthread_wqthread + 729
15 libsystem_pthread.dylib 0x000000010a03740d start_wqthread + 13
)
libc++abi.dylib: terminating with uncaught exception of type NSException
如果我正在使用,则相同:
myObj.saveEventually(success: Bool!, error: NSError!) -> Void in
错误不是 nil 也没有任何东西,saveEventually 只是崩溃了。
但是如果我只使用 saveInBackgroundWithBlock 或 save() 就可以了...
有什么想法吗?
我完全确定昨天还在工作,我对项目中的几乎所有内容都使用了 saveEventually,但该错误对我来说没有意义,因为我没有修改 PFUser。使用最后一个 SDK。
提前致谢!
【问题讨论】:
您是否在表中的某一列中引用了_User 表? 没有 @ChristianWoerz ,根本没有参考。正如我所说,如果我只使用 save 或 saveInBackground 工作正常,所以这是一个不同的问题:-(有什么想法吗? 【参考方案1】:好的...解决方案很简单:
在模拟器中:重置内容和设置 在 XCode 中:产品 -> 清理 && 构建 关闭 Xcode
rm -rf ~/library/Developer/Xcode/DerivedData/
打开 XCode
这个错误肯定看起来像一个错误或类似的东西,但可能是某个 Cache 或 ...whatever... 在某个地方。
希望对你有帮助
干杯
【讨论】:
以上是关于Parse (iOS):除非用户已通过登录或注册进行身份验证,否则无法删除用户的主要内容,如果未能解决你的问题,请参考以下文章
如何制作 parse.com 注销按钮以将我带到另一个让我登录或注册的活动?
通过 Facebook iOS Parse.com 登录用户