【发布时间】:2015-07-13 15:44:11
【问题描述】:
我花了几个小时在 Parse 上学习用户管理,考虑到它已经成为一项长期的服务,我认为这很容易。
关于“自动用户”和会话的文档很差。
我正在尝试构建一个允许用户在决定注册之前匿名存在的应用程序(使用[PFUser enableAutomaticUser])。
注册步骤:
- 从 UI 收集用户详细信息
- 退出当前自动用户并等待成功
- 成功后使用
[PFUser user]创建用户对象并赋值 - 在新用户实例上调用
signUpInBackgroundWithBlock
在执行上述操作时,我有时会收到以下错误(是的,只是有时)。
[错误]:PFKeychainStore 无法获取密钥“currentUser”的对象,错误:-34018
[错误]:无效会话令牌(代码:209,版本:1.7.0)
我的数据库也很脏,因为我不知道如何删除之前创建的自动用户。我尝试保留旧用户的对象 ID 并使用 deleteEventually,但这不起作用?
任何关于如何实现这一目标的建议都会很棒。
【问题讨论】:
-
我的猜测是缓存的用户没有被删除。您是否尝试过诸如在云中创建新用户、将用户令牌传回然后在客户端上使用 becomeUser 之类的方法?
-
我遇到了同样的问题:PFKeychainStore 无法获取密钥“currentUser”的对象,错误:-34018
-
注册前无需删除当前用户,将其视为普通用户,调用
signUp时将转为匿名用户。 -
我对此不确定...但是在执行
signUpInBackgroundWithBlock之前将您正在创建的用户[PFUser user]设置为currentUser是否有意义?也许PFUser *x = [PFUser user]; [PFUser currentUser] = x?我不确定你是否可以像这样设置currentUser,但如果这是相关的,它值得一试。 -
当我在两个位置使用一个用户登录然后我从这两个位置注销时收到此错误。然后另一个位置上的会话无效,您会收到此错误。
标签: ios parse-platform