最近更新了解析SDK(从v1.2.19升级到v1.4.1),使用旧版本SDK注册的用户收到错误:
Error: Parse::UserCannotBeAlteredWithoutSessionError (Code: 206, Version: 1.4.1)
ERROR PFUser checkin: Error Domain=Parse Code=206 "The operation couldn’t be completed. (Parse error 206.)" UserInfo=0x170e76380 {error=Parse::UserCannotBeAlteredWithoutSessionError, code=206}
当应用程序尝试将当前用户对象保存到服务器时,对于登录用户来说这似乎是非常明显的事情。
错误代码(基于Parse上的文档)表示:
我的猜测是强迫用户再次登录,但在这种情况下看起来有点苛刻。
还有其他人遇到同样的问题吗?
答案 0 :(得分:2)
解决方案:
这实际上不是一个错误,而是两个版本的SDK之间来回传递的结果。 如果你只是从v1.2.19升级到v1.4.1,一切都应该没问题,但是当你回到v1.2.19到v1.4.1时你会遇到这种情况。
我们如何处理存储在这些版本和降级路径之间的会话数据的方式发生了变化 - >升级 - >不支持降级。您应该能够通过以下步骤重现此行为:
答案 1 :(得分:2)
如果您仍有问题,请使用以下代码通过会话令牌更新用户
[PFUser becomeInBackground:[PFUser currentUser].sessionToken block:^(PFUser *user, NSError *error) {
currentUser = user;
}];