【问题标题】:Access tokens - How do I get them?访问令牌 - 我如何获得它们?
【发布时间】:2012-01-26 12:08:58
【问题描述】:

我有一个简单的问题:如何获取用户访问令牌??

我只需要基本信息,所以当用户点击我页面上的“允许”时,我希望能够获得该用户的图片/用户名等。

为此,我需要获取该用户的访问令牌。

【问题讨论】:

  • 您能具体说明您使用的是哪种技术或框架吗? php、asp 还是纯 javascript?
  • 我正在使用 php 和 javascript,但 php 肯定是最好的!
  • 然后访问令牌可用 $access_token = $facebook->getAccessToken();你在使用 PHP Facebook SDK 吗?
  • 谢谢!如果我完全诚实,我不确定“PHP Faccebook SDK”是什么。 :p 我必须下载这个吗?

标签: php facebook-graph-api fetch access-token


【解决方案1】:

如果您使用的是 PHP,则在用户成功登录后,您的应用程序可以使用访问令牌。这意味着您应该编写代码来做到这一点。就我个人而言,我有一个简单的 PHP 页面(fblogin.php),我在新窗口中打开,这是代码(它使用 facebook sdk,一定要下载它,还记得在 facebook 中创建一个应用程序以防万一你没有)

require_once ('facebook/src/facebook.php');

// handel cancel
if (isset($_REQUEST['error_reason'])) {
     echo("<script>self.close();</script>");
     exit;
}

// ger request params
$code = $_REQUEST["code"];
$my_url = 'http://www.yourdomain.com/fblogin.php';
$api_key = 'YOURAPIKEY';
$secret = 'YOURSECRETCODE';

// build login url
$loginUrl = $facebook->getLoginUrl(array(
    'req_perms' => 'email,user_birthday',
    'display' => 'popup',
    'redirect_uri' => 'http://www.yourdomain.com/fblogin.php'
    ));

// if no facebook code is given, write login back againg to the window
if(empty($code)) {

    echo("<script> top.location.href='" . $loginUrl . "'</script>");
    exit;

} else {

        //set token for facebook object from graph
        $token_url = "https://graph.facebook.com/oauth/access_token?"
           . "client_id=" . $api_key . "&redirect_uri=" . urlencode($my_url)
           . "&client_secret=" . $secret . "&code=" . $code;

        $response = @file_get_contents($token_url);
        $params = null;
        parse_str($response, $params);

        $facebook->setAccessToken($params['access_token']);
        $fbme = $facebook->api('/me', 'GET');



        if ($fbme) {
            // YOU got the user, id, token, etc. 
                        // do anything you want here,
        } 

}

【讨论】:

  • 非常感谢您的回答:) 我会试试这个!我是 php/websiteing 的初学者,这个问题一直困扰着我!
  • 一个问题;你写的这个 php 脚本。我应该把它放在“fblogin.php”文件中吗?还是在索引文件中?
  • 这是一个示例 PHP 文件,它的作用是显示 facebook 登录窗口,所以你应该在新窗口中打开它,索引不是一个好主意。如果你是初学者,你应该去developers.facebook.com 并开始学习它是如何工作的,下载 PHP SDK ,学习并使用它。玩得开心!
【解决方案2】:

要获得访问令牌,您必须拥有 Facebook 帐户。如果您已经拥有该帐户,则应该访问 developers.facebook.com/docs/reference/api。在此页面上,您有使用 Graph API 的示例,然后您就有了生成的访问令牌。比你有 JSON 结果的例子。有 graph.facebook.com/your_id_number

【讨论】:

  • 感谢您的回答。我已经阅读了有关 api 和 graph 的所有内容!我永远无法真正得到我的问题的答案!不用担心:P你的英语很好。我自己不是母语人士,所以我不在乎语法! :D
  • 我和你有同样的问题,但我需要一个 Bash 的访问令牌。我制作了一个使用 rusty 或 curl 的脚本,当我通过 curl 登录时我需要一个令牌来访问......而不是我通过流将接收到的信息发送到 jsawk 来处理它......
  • 编辑一个 4 年前的 0 票的grammarz 答案需要认真的付出,恭喜!
  • 我看到了从那时到现在的进步。这对我来说很有价值。
猜你喜欢
  • 1970-01-01
  • 2013-05-05
  • 2012-11-26
  • 2017-06-09
  • 2012-06-04
  • 1970-01-01
  • 2013-12-09
  • 1970-01-01
  • 2023-03-30
相关资源
最近更新 更多