【问题标题】:Facebook oauth returns 2 fb ids for one userFacebook oauth 为一位用户返回 2 个 fb id
【发布时间】:2016-02-23 18:41:01
【问题描述】:

我一直在维护一个允许用户使用 FB 凭据登录的站点。在过去的 2 年里,这一切都在我们的服务器上运行良好,实际上仍然运行良好。

现在我添加了一个新的集成服务器。当用户使用他们的 FB 凭据登录时,会返回一个不同的 ID,这与他们登录我们的旧服务器时获得的 ID 不同。

当我在 facebook.com 中使用任一 ID 时,我都会被发送到正确的主页。所以看起来一个用户有多个 FB ID。

有人见过这个吗?我难住了。复制了旧服务器的有效 Facebook 应用程序定义,不高兴。剥离了新服务器的应用程序定义,没有乐趣。

一个区别是我们的新服务器使用的是 IP 地址,而不是 dns 条目。这可能是问题吗?

感谢您的帮助。

【问题讨论】:

    标签: facebook oauth


    【解决方案1】:

    随着 API v2.0 的引入,Facebook 已将用户 ID 设置为 app-scoped——这意味着,每个应用都会为用户看到不同的 app-scoped id。目的当然是改善用户隐私。

    https://developers.facebook.com/docs/apps/changelog#v2_0_graph_api

    在你问之前:不,你不能从一个应用范围的 ID 中获得“真实”的 id——而且你不应该这样做。

    如果您需要识别贵公司拥有的不同应用中的用户,请查看它对 Business Mapping API 的描述(在更新日志中稍稍往下一点)。

    【讨论】:

    • 感谢此信息帮助很大。不幸的是,我们的用户在 2014 年 4 月之前首次登录,因此有些人仍然获得不同的应用范围 ID。我想我将不得不更改我们的代码以使用业务映射规则。
    • 对于在 API v2.0 引入之前首次登录应用程序的用户,您仍将获得他们的“全局”用户 ID。只有 后第一次登录的用户,您的应用才能看到应用范围内的用户 ID。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2023-03-08
    • 2017-09-04
    • 2021-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多