3

我有一个使用 Facebook OAuth 进行身份验证的 RoR / JQuery Mobile 应用程序。通过桌面和移动设备上的任何普通浏览器访问它时,一切正常,但有一个例外。

如果用户单击 Twitter iOS 应用程序中的应用程序链接,则主页会在内部 Web 视图中加载。如果用户然后单击“使用 Facebook 登录”,则身份验证似乎成功,但当 Facebook 将用户重定向回应用程序时,页面永远不会加载。它只是显示一个空白页面,屏幕顶部的网络指示器一直在旋转。如果我关闭 Web 视图并再次单击链接,则页面加载正常,因为用户已经过身份验证。

iOS 上的 Twitter 应用程序中的 Facebook Auth 是否有其他问题?关于如何解决这个问题的任何建议?这可能只是 iOS 上 Twitter 应用程序的一个错误吗?

谢谢

4

1 回答 1

0

我相信我找到了解决方案。facebook 身份验证过程使用了很多我认为可能导致问题的重定向(总共 5 个)。在查看了该过程后,我意识到我可以删除其中一个重定向,并在用户通过身份验证后直接将其带到我想要的页面。

  • www.example.com(来自推文的链接)
  • www.example.com/auth/facebook(使用点击“使用 Facebook 登录”)
  • 1 - 重定向到:graph.facebook.com/oauth/authorize
  • 2 - 重定向到:www.facebook.com/dialog/oauth
  • 3 - 重定向到:www.example.com/auth/callback
  • 4 - 重定向到:www.example.com/entry_path(现在已被删除
  • 5 - 重定向到:www.example.com/final_logged_in_path

登录过程现在可以在 Twitter iOS 应用程序中运行。

于 2013-05-20T01:40:33.530 回答