Отслеживание Facebook как клики - PullRequest
0 голосов
/ 09 мая 2011

Я пытаюсь создать функцию на своем сайте, где я буду вознаграждать пользователей, которым «нравится» страница / публикация / элемент на сайте. Я знаю, используя FQL, я могу запросить таблицу как и узнать, кому она понравилась. Также мне, вероятно, нужно подписаться на edge.create событие , чтобы знать, когда кому-то «нравится».

Однако мой вопрос таков. У меня нет подключения к Facebook на моем сайте, поэтому я не знаю UID Facebook пользователей моего сайта. Теперь, как я буду сравнивать пользователя Facebook, который нажимает на кнопку «Мне нравится», с моим пользователем на локальном сайте, поскольку в этом нет ничего общего? Или мне нужно сделать логин через FB connect обязательным? Любые решения (чистые или грязные) приветствуются.

Ответы [ 2 ]

1 голос
/ 09 мая 2011

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

FB.Event.subscribe('edge.create', function(href, widget) {
    // callback will be fired when some one clicked your like button
    // your code to save here ...
    alert('You liked ' + href, widget);
});

Подробнее о подписках на события здесь: http://developers.facebook.com/docs/reference/api/event/

Найти множествообразцы здесь: http://fbrell.com/xfbml/fb:like

1 голос
/ 09 мая 2011

Полагаю, тот факт, что вы связались с таблицей FQL Like , означает, что вы немного запутались во всем этом.

Вот пара моментов:

  1. Facebook будет не обмениваться идентификатором пользователя, пока пользователь не авторизует ваше приложение
  2. Таблица, которую вы должны искать: link_stat; и, как вы можете видеть, в нем нет "uid"
  3. Поскольку у вас не реализован вход в Facebook, но у вас все еще есть собственная система, я полагаю, что вы можете захватить подобное с помощью edge.create, выполнить процедуру вознаграждения через ajax, и поскольку у вас уже есть пользователь, зарегистрированный на локальном сайте Вы можете проверить это.
...