迁移旧的facebook身份验证密钥以访问\u令牌

迁移旧的facebook身份验证密钥以访问\u令牌,facebook,migration,Facebook,Migration,我正在开发一个旧的应用程序,现在将对其进行更新,以便我们能够支持Facebook的新功能。我注意到用户模型有uuid、atoken和asecretfacebook密钥 在旧网站中,用户可以登录Facebook并发布状态更新。问题是,我需要将旧的用户信息迁移到新的模式 我想知道的是,既然我的用户没有访问令牌,我怎么能将令牌和Facebook密钥转换为oauth2访问令牌,因为我需要老用户在使用应用程序时几乎不会注意到任何架构上的变化,只有设计上的变化。我相信您必须检查当前令牌-如果当前令牌“包含”

我正在开发一个旧的应用程序,现在将对其进行更新,以便我们能够支持Facebook的新功能。我注意到用户模型有uuid、atoken和asecretfacebook密钥

在旧网站中,用户可以登录Facebook并发布状态更新。问题是,我需要将旧的用户信息迁移到新的模式


我想知道的是,既然我的用户没有访问令牌,我怎么能将令牌和Facebook密钥转换为oauth2访问令牌,因为我需要老用户在使用应用程序时几乎不会注意到任何架构上的变化,只有设计上的变化。

我相信您必须检查当前令牌-如果当前令牌“包含”用户ID,那么只需向他们提供一个链接,将其令牌更新为身份验证令牌

他们应该已经实现了一些东西,以便可以提交旧令牌以请求交换中的新身份验证令牌。 但我猜他们这样做是为了强迫用户重新登录并维护他们的隐私

--编辑-- 我被纠正了。 Facebook确实实现了这一点,尽管在他们的cr#p文档中很难找到:

要运行的代码是:

curl -F client_id=your_app_id \
 -F client_secret=your_app_secret \
 -F sessions=session_key1,session_key2 \
 https://graph.facebook.com/oauth/exchange_sessions
这将返回一个正确的OAuth访问令牌,然后可以与所有3.x SDK一起使用