给定 APP 秘密和客户端 ID 检索 Facebook 用户访问令牌
Given APP secret and client ID retrieve Facebook user access token
以下 Facebook URL:
https://developers.facebook.com/tools/accesstoken/
显示来自 Facebook 用户创建的应用程序的所有用户令牌。
这是我目前如何手动检索我的 Facebook 用户访问令牌 (source):
OAuth 2.0
使用标准的 OAuth 2.0 实现,第一步是调用服务提供商 (facebook) 的 OAuth Dialog-
\GET http://www.facebook.com/dialog/oauth
Parameters-
client_id
(APP ID)
redirect_uri
(App's Redirect Url)
scope
(permissions - optional)
Returns-
code
(appended with the redirect url)
用户成功验证应用程序后,服务提供商(facebook)返回一个code
并附加通过的redirect_url
。所以你会被重定向到-
{redirect-url}?code=XXXXXXXXXXXXXXXXX
然后我们使用这个 code
并请求 access_token
-
\GET https://graph.facebook.com/oauth/access_token
Parameters-
client_id
(APP ID)
client_secret
(APP Secret)
code
redirect_uri
这工作正常,但如您所见,它需要手动步骤才能从重定向的 URL 中检索 code 并将其添加到第二个 URL 即 returns 用户访问令牌 。但是我不知道如何使这个过程自动化,也就是说,给定一个用户 App ID 和 App Secret,检索我的 无需手动步骤的用户访问令牌。
有什么方法可以使用 PHP 脚本检索用户访问令牌吗?
以下是我使用 PHP SDK 实现此目的的尝试:
require_once __DIR__ . '/vendor/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '<my app id>',
'app_secret' => '<my app secret>',
]);
$helper = $fb->getRedirectLoginHelper();
$accessToken = $helper->getAccessToken();
然而 $accessToken returns NULL.
是否有其他方法可以使用 Facebook PHP SDK 执行此操作?
无法自动获取用户令牌或自动进行用户授权。这将使整个用户授权变得毫无意义,并且没有严肃的用例。获取用户令牌的唯一方法是手动授权用户(通过构建手动登录流程或使用其中一个 SDK)。
以下 Facebook URL:
https://developers.facebook.com/tools/accesstoken/
显示来自 Facebook 用户创建的应用程序的所有用户令牌。
这是我目前如何手动检索我的 Facebook 用户访问令牌 (source):
OAuth 2.0
使用标准的 OAuth 2.0 实现,第一步是调用服务提供商 (facebook) 的 OAuth Dialog-
\GET http://www.facebook.com/dialog/oauth
Parameters-
client_id
(APP ID)redirect_uri
(App's Redirect Url)scope
(permissions - optional)
Returns-
code
(appended with the redirect url)
用户成功验证应用程序后,服务提供商(facebook)返回一个
code
并附加通过的redirect_url
。所以你会被重定向到-{redirect-url}?code=XXXXXXXXXXXXXXXXX
然后我们使用这个
code
并请求access_token
-\GET https://graph.facebook.com/oauth/access_token
Parameters-
client_id
(APP ID)client_secret
(APP Secret)code
redirect_uri
这工作正常,但如您所见,它需要手动步骤才能从重定向的 URL 中检索 code 并将其添加到第二个 URL 即 returns 用户访问令牌 。但是我不知道如何使这个过程自动化,也就是说,给定一个用户 App ID 和 App Secret,检索我的 无需手动步骤的用户访问令牌。
有什么方法可以使用 PHP 脚本检索用户访问令牌吗?
以下是我使用 PHP SDK 实现此目的的尝试:
require_once __DIR__ . '/vendor/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '<my app id>',
'app_secret' => '<my app secret>',
]);
$helper = $fb->getRedirectLoginHelper();
$accessToken = $helper->getAccessToken();
然而 $accessToken returns NULL.
是否有其他方法可以使用 Facebook PHP SDK 执行此操作?
无法自动获取用户令牌或自动进行用户授权。这将使整个用户授权变得毫无意义,并且没有严肃的用例。获取用户令牌的唯一方法是手动授权用户(通过构建手动登录流程或使用其中一个 SDK)。