Отправить запрос приложения Facebook / Пригласить с помощью Graph Api - PullRequest
4 голосов
/ 10 сентября 2011

У меня есть следующий код, который получит список ваших друзей, используя graph api

function getFriendsList(){

    $response = $this->api('/me/friends'); 
     return $response;

    }

Возвращает идентификатор и имя друзей. используя график API

Затем я выполняю этот код в моем модуле Joomla:

$fbClient = JFBConnectFacebookLibrary::getInstance();
$fbUserId = $fbClient->getUserId(TRUE);   

//If FB User
if($fbUserId){

$f_list = $fbClient->getFriendsList();

после получения массива я показываю картинку firends

foreach ($f_list as $friend) {
    for($i = 0; $i < count($friend); $i++)
        { 

        echo '<img src="http://graph.facebook.com/'.$friend[$i]['id'].'/picture"><br/>';
        }
   }

}

Это создаст фотографии профиля моих друзей.

У меня вопрос, как мне создать onlick, чтобы при нажатии на фотографию я мог отправить отдельный запрос на приложение Facebook. ???

Ответы [ 2 ]

6 голосов
/ 10 сентября 2011

Отправка запросов приложения Facebook не доступна через график API. Вы можете использовать приложение запрашивает диалог javascript , чтобы отправить запрос, однако вам просто нужно указать идентификатор пользователя в свойстве «to», как подробно описано в документации.

Пример функции:

<script>
  FB.init({ appId: '**appId**', status: true, cookie: true, xfbml : true });

  function sendRequest(to) {
    FB.ui({method: 'apprequests', to: to, message: 'You should learn more about this awesome site.', data: 'tracking information for the user'});
    return false;
  }
</script>

Затем просто подключите щелчок для каждого изображения к чему-то вроде onclick="return sendRequest('**friendId**');"

5 голосов
/ 22 февраля 2012

У меня была такая же проблема.Хотя уже очень поздно отвечать на вопрос, это кому-нибудь поможет.Вот почему отвечая на этот вопрос.

Вместо этого вы можете вызвать эту функцию в javascript: она даст вам всех друзей с фотографиями.Также группа друзей, которые в настоящее время используют то же приложение.Вы можете отправить запрос любому из них.

function sendRequestViaMultiFriendSelector() {
    FB.ui({
        method: 'apprequests',
        message: "You should learn more about this awesome site."
    });     
}
...