ловить как / не нравится в моем приложении холста - PullRequest
0 голосов
/ 27 ноября 2011

Я добавил кнопку like на страницу приложения Canvas, которая фактически настроена на странице приложения Facebook.

Мне бы хотелось, чтобы всякий раз, когда пользователь нажимал кнопку «Нравится» или «Не понравилось» на моей странице, на мой сервер отправлялся запрос с уведомлением о том, что пользователю понравилась или не понравилась страница приложения.

Я могу пойматьэти события, используя следующий код:

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

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

Я могу просто проверить, соответствует ли ответ моей странице приложения facebook.вопрос ... после того, как я поймал подобное или не нравится, как я могу переслать его на сервер достаточно безопасно?как я могу отправить запрос на сервер, не публикуя идентификатор facebook в качестве параметра post / get?

Я хочу отправить его на сервер таким образом, чтобы сервер мог получить информацию о сеансе Facebook и получить идентификатор пользователя оттуда, или любым другим безопасным способом.

пример:

если я просто позвоню http://mysite/liked_my_app?uid=4534534543

, тогда пользователь заметит этот запрос и начнёт посылку likes_my_app с поддельными uids.

есть ли способ как-то это предотвратить?

спасибо

1 Ответ

1 голос
/ 27 ноября 2011

Вместо использования UID пользователя, перешлите signed_request.Только вы могут декодировать подписанные запросы, поступающие из вашего приложения, поскольку app_secret необходимо использовать для его декодирования.Другое возможное решение (в зависимости от того, что именно вы хотите сделать, когда вы подтверждаете событие «Мне нравится / не нравится»), заключается в том, чтобы периодически проверять число страниц и приложений, например, в задании cron.Когда пользователю нравится ваша страница / приложение, вы можете получить его UID (возможно, и другую информацию) и перекрестные ссылки на списки из последнего задания cron.

...