Фан-страница Facebook Нравится захват события - PullRequest
0 голосов
/ 25 января 2012

Я работаю на странице фан-фейсбука.Я хочу вызвать фоновое действие , если Страница понравилась любому пользователю.Я использую JavaScript SDK от SDK & Инструменты разработки Facebook.Пожалуйста, дайте мне знать, как я могу это сделать?

Ответы [ 2 ]

1 голос
/ 25 января 2012

Взгляните на FB.Event.subscribe .

Вот ваш точный пример:

FB.Event.subscribe('edge.create',
    function(response) {
        alert('You liked the URL: ' + response);
    }
);

РЕДАКТИРОВАТЬ:

Если строго говорить о фан-странице - ваша фан-страница, как это делается, путем перезагрузки страницы.Затем вы можете использовать PHP SDK (например), чтобы определить, понравилась ли текущему пользователю страница.

Пример PHP для этого:

$data = $facebook->getSignedRequest();
$doesLikePage = $data && isset($data['page']) && $data['page']['liked'];

Затем вы можете либо инициировать свое действие немедленно, либогенерировать JavaScript, который будет вызывать фоновые действия при загрузке страницы.

0 голосов
/ 25 января 2012

Точная копия этого вопроса: Как проверить, нравится ли пользователю моя страница Facebook или URL с помощью API Facebook

И вот ответ: https://stackoverflow.com/a/5100287/728863 Изответ:

function parsePageSignedRequest() {
    if (isset($_REQUEST['signed_request'])) {
      $encoded_sig = null;
      $payload = null;
      list($encoded_sig, $payload) = explode('.', $_REQUEST['signed_request'], 2);
      $sig = base64_decode(strtr($encoded_sig, '-_', '+/'));
      $data = json_decode(base64_decode(strtr($payload, '-_', '+/'), true));
      return $data;
    }
    return false;
  }
  if($signed_request = parsePageSignedRequest()) {
    if($signed_request->page->liked) {
      echo "This content is for Fans only!";
    } else {
      echo "Please click on the Like button to view this tab!";
    }
  }
...