【发布时间】:2011-11-09 13:53:45
【问题描述】:
是否可以解密 Facebook 的新 OAuth 2.0 access_token ?
我需要从 access_token 中获取 user_id 和 app_id。
PS:
我只需要像 Facebook Linter 过去那样从 access_token 获取 user_id 和 app_id。
【问题讨论】:
-
您必须使用已注册的
app_id来获取access_token,并且您可以通过访问Graph API URL/me/从access_token获取user_id。如果不尝试解密access_token,您没有/无法获得所需数据的任何原因? -
我只需要像 Facebook Linter 过去那样从 access_token 获取 user_id 和 app_id。
-
请澄清您的问题并详细说明您想做什么。
user_id和app_id是access_token的先决条件,因此将其反转是荒谬的。正如其他人所概述的,只要令牌有效,您始终可以对/me/进行简单的 API 调用以检索关联的user_id。如果令牌不再有效,那么您就不走运了。 -
您可能将
access_token与传递给您的应用程序的signed_request混淆了。仅当用户登录并授予您的应用程序访问其帐户的权限时,签名请求必须被解码并包含access_token。如果他们是用户会话,则 signed_request 还包含“user_id”。 signed_request 仅在初始 POST 加载时的画布上下文中可用,此时您的应用正在 Facebook iframe 中加载。