gpt4 book ai didi

javascript - Facebook Connect 用于具有多个域的一个应用程序?

转载 作者:行者123 更新时间:2023-11-30 05:14:21 26 4
gpt4 key购买 nike

我正在实现一个可嵌入不同站点(如 Meebo、Wibiya)的插件,并且我想使用 Facebook Connect。该插件应该可以嵌入到具有不同域名的站点中。问题是,Facebook 连接只允许您注册的每个应用程序有一个域。

问题是,假设:

  1. 当用户在一个站点上“允许”该应用程序时,他们也不必在其他站点上“允许”它。

  2. 最好是,在初始登录后,用户不会在他们登录的每个站点上都看到弹出窗口打开(即 - 我宁愿不打开指向我的域的链接并执行登录过程)。

有办法吗?
如果没有,我唯一的选择是管理来自单个域的所有登录并将 cookie 传回原始域吗?
如果我在域之间传递 cookie,我如何确定 Facebook 将来不会阻止这种行为?

如果有任何建议,我将不胜感激,但如果可能的话,我更喜欢官方解决方案而不是 hacks。

最佳答案

我假设您使用的是 Naitik Shah 的 facebook.php?您的小部件当然需要出现在每一页上并包含 async script connect-js .我目前正在自己​​开发一个基于 facebook 登录的应用程序。

我认为最好的解决方案是通过您自己的域登录并传递 cookie。您的应用程序/小部件将是他们唯一允许与之共享信息的应用程序/小部件。与单页解决方案的操作应该没有什么不同。我设想了一个 PHP 插件,它从外部域执行登录并通过小部件将 cookie 传递到站点。按照您的意愿安全地返回 cookie(除了一些不可靠的东西,比如将它存储在 div 中并检索它......或者黑客可能试图欺骗的东西)。该站点然后将 cookie 用于帐户和用户 ID 目的,并且小部件将使用异步脚本控制所有登录操作和 session 查找(但通过不同的域路由)。

抱歉,我无法提供更多帮助,但这是我能想到的唯一解决方案,而且您似乎已经想到了。

就保持跨不同域的 session 控制而言,您只需要激活第 3 方 cookie。一旦您的页面为您的域激活,如果您没有注销或尚未过期,您将已经拥有该域的 cookie。使用外部管理域的好处。

与针对多个域的任何成功黑客攻击相比,这似乎也是最可靠的方法,因为我认为 fb 和 Oauth2.0 可以与批准方共享信息(cookie)到另一方派对。但是.. 如果他们认为用户会有隐私问题,那可能会有问题,因为您可能会在未经用户许可的情况下在任何网站上共享 cookie。因此,您必须小心告知用户他们将自动登录的所有网站,并尊重他们。

祝你好运,希望你告诉我们进展如何。

关于javascript - Facebook Connect 用于具有多个域的一个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4431574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com