ios - 在 parse.com 中将匿名用户转换为登录用户时无效的 sessiontoken

标签 ios swift parse-platform

我在 iOS 上使用 Swift。

我的应用有一个帖子列表。您可以匿名阅读,但必须注册才能发帖。

当您打开应用程序时,您会得到一个匿名帐户。我将以下内容放入 AppDelegate

PFUser.enableAutomaticUser()
PFUser.currentUser()?.incrementKey("RunCount")
PFUser.currentUser()?.saveInBackground()

我的代码来自:https://www.parse.com/docs/ios/guide#users-anonymous-users

你去发帖的时候我让你报名

let user = PFUser.currentUser()
user?.username = displayNameTextField.text
user?.password = passwordTextField.text
user?.email = emailTextField.text
user!.signUpInBackgroundWithBlock { ... }

这成功了。我可以看到用户正在服务器上更新。但是我收到 209 错误:[错误]:无效 session token (代码:209,版本:1.7.4)

我已经尝试查看 sessiontoken 并在每一步都将其打印出来,但它保持不变。我听说当用户注销时 sessiontokens 无效,但我认为我只是让用户登录而不是退出。为什么sessiontoken无效?

我已经尝试使用 sessiontoken 通过 PFUser.Become() 将用户设置为当前用户,但这也不起作用。

我显然忽略了一些东西,但我不知道是什么。非常感谢任何帮助。

最佳答案

同样的问题开始发生在我身上,我意识到这是由于在应用程序设置中启用了这个选项:

Revoke existing session tokens when user changes password - YES/NO

我怀疑这是为匿名用户设置密码的意外副作用 - 我认为在这种情况下没有任何理由需要重置 session token 。

希望这个问题能得到解决,但解决方法是在 signUp 方法成功后立即调用 logInWithUsername 方法。

关于ios - 在 parse.com 中将匿名用户转换为登录用户时无效的 sessiontoken,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30586643/

相关文章:

ios - 我能否访问我的应用程序沙箱范围之外的其他 iOS 应用程序的信息?

ios - 创建一个大量图像的 iOS 应用程序 - 在线数据库? - Swift

java - 无法通过启用 proguard+using parse sdk 1.8.2 导出 Android 应用程序

ios - 使用同步 DispatchQueue 设置非零值的最 "Swift-like"/clean 方法是什么?

ios - 无法保存到 iOS 7.0.2 上的 NSUserDefaults

ios - 为 SKLabelNode 设置背景颜色?

ios - 如何将目标操作添加到 UITableViewCell

ios - 如何在两点之间画一条线

ios - Swift - 从解析中接收图像并显示它们时出现问题

ios - Swift Parse 创建用户