【问题标题】:Granting publish_stream permission using Facebook API in PHP在 PHP 中使用 Facebook API 授予 publish_stream 权限
【发布时间】:2023-03-12 10:22:02
【问题描述】:

我正在开发一个小型 facebook 应用程序,但无法授予扩展权限,我想授予以下权限:

read_stream & publish_stream & offline_access

但是我想在不使用 FBML 的情况下执行此操作,任何想法如何使用 git hub 上的新 PHP SDK 执行此操作:链接 (http://github.com/facebook/php-sdk/raw/master/src /facebook.php)

我希望能够同时登录并授予这些权限。

有人知道这是否可能吗?

【问题讨论】:

    标签: php facebook sdk


    【解决方案1】:

    甚至不需要 SDK。这几乎是来自https://developers.facebook.com/docs/authentication/ 的复制粘贴,并进行了一些调整(当第一次未设置 $_REQUEST["code"] 时,他们的代码为我触发了 PHP 错误),并且添加到初始身份验证请求的适当权限。

    $app_id = 'YOUR_APP_ID';
    $app_secret = "YOUR_APP_SECRET";
    $my_url = "TARGET_URL_ONCE_PERMISSION_IS_GIVEN";
    
    $code = isset($_REQUEST["code"] ) ? $_REQUEST["code"] : false;
    
    
    if(!$code) {
        $dialog_url = "https://www.facebook.com/dialog/oauth?client_id=" . $app_id . "&scope=publish_stream,offline_access&redirect_uri=" . urlencode($my_url);
        echo("<script> top.location.href='" . $dialog_url . "'</script>");
    }
    
    $token_url = "https://graph.facebook.com/oauth/access_token?client_id="
        . $app_id . "&redirect_uri=" . urlencode($my_url) . "&client_secret="
        . $app_secret . "&code=" . $code;
    
    $access_token = file_get_contents($token_url);
    
    $graph_url = "https://graph.facebook.com/me?" . $access_token;
    
    $user = json_decode(file_get_contents($graph_url));
    
    echo("Hello " . $user->name);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-07-24
      • 1970-01-01
      • 2011-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多