【问题标题】:Facebook client-side OAuth 2.0 questionsFacebook 客户端 OAuth 2.0 问题
【发布时间】:2024-01-03 02:08:01
【问题描述】:

上下文是使用客户端 OAuth 流进行身份验证的桌面应用程序。

当我大约一年前第一次构建这个应用程序时,Facebook 的文档说使用以下 URL 来生成登录/授权对话框:

https://graph.facebook.com/oauth/authorize?client_id=XXXXXXXX&redirect_uri=YYYYYYY

目前正在运行。但是,我查看了新更新的身份验证指南,现在看到 Facebook 说要使用:

https://www.facebook.com/dialog/oauth?client_id=XXXXXXXX&redirect_uri=YYYYYYY

有谁知道它们之间有什么区别,更重要的是我需要改变它吗?就像我说的,它现在正在运行,但我有点担心在 2011 年 10 月 1 日截止日期到来时会发生一些变化。

我的第二个问题是:有谁知道在应用程序 -> AppName -> 高级页面中启用“OAuth 迁移”设置有什么作用?

【问题讨论】:

    标签: authentication facebook-graph-api facebook oauth-2.0


    【解决方案1】:

    网址相互重定向。但是,请更改新的 URL。每当文档更改 url 并且语义相同时,您应该更新以避免不必要的破坏性更改。桌面应用程序更是如此。

    第二个答案:这会暂时给你发放不同的访问令牌。

    【讨论】:

    • 如果您切换到新的,对您的用户也更好,因为它会跳过不必要的跳跃。
    • @uɐɾɹɐʇ ןnɐd。谢谢,我将更改为新的网址。当您说“这将暂时向您发放不同的访问令牌。”时,这对我的应用程序和用户而言究竟意味着什么?现在这两种访问令牌可以与 Graph API 互换使用吗?
    • @daaku - 你能解释一下“不必要的跳跃”吗?根据我的测试,两个 URL 都重定向到同一个位置,https://www.facebook.com/connect/uiserver.php?<params>
    • 嗯..你是对的。我认为它不应该这样做,我会跟进。