会话 class 在 Parse.com 上不存在

Session class DOES NOT Exist on Parse.com

我目前正在使用 Parse 作为移动应用程序的后端。我只是注意到 Session class 在仪表板上不存在,我找不到让它出现的方法。虽然我很确定它在那里,因为我的应用程序运行良好,因为用户可以毫无问题地登录(并保持登录状态直到注销)。

根据 Parse.com 这应该是自动创建的。我目前有自己创建的安装、用户、角色和自定义 classes。

当我要迁移到 Parse Server 时,这让我发疯,但我找不到会话 class,它也没有迁移到目标 Mongo 数据库.这意味着一旦我切换到 Parse Server,用户就会开始收到 'Invalid session token' 错误。

顺便说一句,我有一个暂存环境,Session class 确实存在于其中,但不存在于我的生产环境中。

一旦用户注册或登录,Parse Server 将自动创建会话 class(如果尚不存在)。

如果您要从 Parse.com 迁移到您自己的 Parse Server,您应该已经将 MongoDB 数据库迁移到托管服务提供商(例如 mLab)。这应该已经迁移了您的所有用户、会话和所有其他数据。要验证这一点,您应该能够查看 MongoDB 数据库中的集合:有很多 MongoDB 管理工具可免费用于此目的。您应该检查数据库中的 _Session 集合。

然后您应该能够打开开源 Parse Dashboard,并看到您的用户和会话 table 以及所有会话令牌仍然有效的记录。

如果您的数据库中有 _User 集合,但没有 _Session 集合:数据库迁移有问题,或者您从未为您的用户启用新的 Parse Revocable Sessions(这意味着会话令牌实际上存储在每个 _User 记录中)。在 Parse.com 仪表板上检查此项的方法是在您应用程序的“设置”区域中。如果是这样,您应该看看启用可撤销会话。您应该确保您使用的是最新的 SDK、Parse Server 和 Parse Dashboard。

如果您在 Parse.com 仪表板上看到一个会话 class,并且没有使用开源 Parse 仪表板指向您的 Parse Server 的会话 class,那么一定是配置错误在您的 Parse Server 上,因为它们都应该指向同一个 MongoDB 具有可撤销会话设置的数据库。

这是我在不知道您的系统设置或迁移方式的其他详细信息的情况下所能提供的尽可能多的信息。但希望它能有所帮助。