簡體   English   中英

使用Facebook PHP SDK發布到用戶的Facebook Wall

[英]Publishing to User's Facebook Wall with Facebook PHP SDK

我正在將基於Web的游戲集成到Facebook Game中。 Facebook登錄,獲取用戶ID,獲取用戶個人資料圖片即可。 但是我需要在牆上貼一些東西(例如, John Doe獲得50分! )。

我對我的Facebook應用程序具有offline_accesspublish_Stream權限。

現在我想自動發布一些鏈接。 我正在使用帶Yii的 Facebook PHP SDK

我可以獲取Facebook用戶ID等...但是我不知道如何自動(例如,當用戶離線時)在用戶牆上發布內容。

我正在尋找Graph API Post文檔的發布標題。 但是我需要使用access_token參數。 而且我不確定這個access_token在哪里。

PHP-SDK 3.1.1

生成應用和用戶令牌。 $ app_access_token$ access_token

*如果您具有離線訪問權限,則用戶access_token永遠不會過期,除非用戶取消對您的應用程序的授權。 您需要用於在用戶離線或不與您的應用程序交互時將其發布到用戶牆上。*


<?php
require './src/facebook.php';
$facebook = new Facebook(array(
  'appId'  => '135669679827333',
  'secret' => 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
));
 $user = $facebook->getUser();
 if ($user) {
   try {
     // Proceed knowing you have a logged in user who's authenticated.
     $user_profile = $facebook->api('/me');
   } catch (FacebookApiException $e) {
     error_log($e);
     $user = null;
   }
 }
 if ($user) {
   $logoutUrl = $facebook->getLogoutUrl();
 } else {
   $loginUrl = $facebook->getLoginUrl();
 }
// Create Application Access Token
$app_access = "https://graph.facebook.com/oauth/access_token?client_id=135669679827333&client_secret=xxxxxxxxxxxxxxxxxxxxxxxx&grant_type=client_credentials";
$app_access_token = file_get_contents($app_access);
// If we have a user who is logged in, create access_token with session.
if ($user) {
$access_token = $_SESSION['fb_135669679827333_access_token'];
}
?>

查看身份驗證文檔 ,該文檔將向您展示如何獲取訪問令牌。

您可以像這樣獲得訪問令牌

               $access_token = $session['access_token'];

現在在需要的地方使用$ access_token

               $my_friends_ids=file_get_contents("https://graph.facebook.com/me/friends?access_token=".$access_token);

在這里,我得到了所有朋友的身份證

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM