Ios 跨平台登录应该如何使用解析服务器?(正在获取无效的会话令牌)

Ios 跨平台登录应该如何使用解析服务器?(正在获取无效的会话令牌),ios,express,parse-platform,login,parse-server,Ios,Express,Parse Platform,Login,Parse Server,我正在开发一个跨平台的应用程序(iOS和web),它使用解析服务器(和iOS上的解析iOS SDK)。在iOS应用程序和web应用程序之间切换时,我收到一个“无效会话令牌”错误,该错误会阻止任何进一步的解析调用成功。换句话说,以下是导致此错误的步骤: 在iOS上注册帐户 将应用程序发送到后台(不会让您注销) 在浏览器中打开web应用并登录 关闭选项卡/浏览器或注销都无所谓 打开iOS应用程序,尝试调用任何解析时将出现无效会话令牌错误 同样的事情反过来也会发生,因此如果您开始在web上注册,然后登

我正在开发一个跨平台的应用程序(iOS和web),它使用解析服务器(和iOS上的解析iOS SDK)。在iOS应用程序和web应用程序之间切换时,我收到一个“无效会话令牌”错误,该错误会阻止任何进一步的解析调用成功。换句话说,以下是导致此错误的步骤:

  • 在iOS上注册帐户
  • 将应用程序发送到后台(不会让您注销)
  • 在浏览器中打开web应用并登录
  • 关闭选项卡/浏览器或注销都无所谓
  • 打开iOS应用程序,尝试调用任何解析时将出现无效会话令牌错误
  • 同样的事情反过来也会发生,因此如果您开始在web上注册,然后登录iOS,然后再次返回web,web应用程序的解析调用将失败

    我可以看到,当在一个平台上登录(或注册)时,会在
    Sessions
    表中创建一个条目,然后在另一个平台上登录将用该用户的新条目替换该条目。然后,当返回到另一个平台时,
    会话
    条目将不同(使用不同的令牌),从而导致错误

    处理这个问题的最好方法是什么?在这种情况下是否需要手动管理会话?当然,我可以弹出一个错误,让用户通知他们他们的会话已过期,必须重新登录,但最好不要这样做

    那么,每个平台是否需要自己的
    会话
    ,或者是否有共享会话的方法


    我目前正在使用Parse iOS SDK 1.14.4和Parse Server 2.3.7。在iOS应用程序中,我正在调用
    enableRevocableSessionInBackground()

    ,这很奇怪,Github问题提供了有关您错误的更多信息。为什么需要专门调用
    EnableRevecableSessionInBackground()
    ?@Nick Ok,谢谢。有机会的话,我会仔细考虑这个问题。要从现在已弃用的旧会话令牌迁移,需要调用该方法。我试着把它评论出来,但是没有用。另一件奇怪的事情是,它在当前部署的生产环境中工作。我现在遇到的这个错误是在dev上。不确定这是否是一个bug,或者与prod与dev上的解析服务器版本有关(不确定此时的prod版本是什么)。检查解析版本,也许这就是问题所在。目前,我有3、4个活动会话的用户,所以这不应该是一个问题。其次,对于用户的多个会话没有问题。我肯定会区分你的配置文件,看看你是否改变了一些不经意间影响到这一点的东西,并检查parse server的版本。