получение информации о себе из facebook api

#javascript #facebook

#javascript #Facebook

Вопрос:

я хочу получить свою личную информацию из своей учетной записи Facebook для отображения на моем веб-сайте. я не хочу, чтобы зритель предварительно входил в facebook env. я не хочу просить посетителя аутентифицировать какие-либо приложения. Я хочу сделать это с помощью hte Javascript api. есть какие-нибудь указания?

есть ли возможный способ добиться этого?

Ответ №1:

Конечно. Во-первых, вам нужно настроить приложение Facebook для вашего домена. Затем вам нужно будет предоставить приложению разрешение на доступ к вашему профилю. Обычно это делается с помощью FBML

 <fb:login-button params="some permission" />
  

или JS SDK

 FB.login(callback, { perms:'some permission'});
  

Предоставление вашего приложения будет одноразовой ситуацией, поэтому вы можете просто написать временную страницу для достижения этой цели. Впоследствии, на ваших реальных общедоступных страницах, вам нужно будет инициализировать JS SDK с помощью FB.init() , а затем запросить FB API:

 FB.api('/path-to-your-facebook-page', callback)
  

Где '/path-to-your-facebook-page' — URL вашей страницы facebook минус домен и callback — функция, которая запускается при возврате API. Если ваш профиль является http://www.facebook.com/amit , вы бы вызвали FB.api('/amit', callback); оттуда callback функцию, которая предоставит объект JSON со всей информацией, доступ к которой вы разрешили своему приложению.

Возможно, вы захотите рассмотреть возможность использования серверного SDK для запроса API. Это ограничит объем вашей информации, которая попадает в браузер. Для серверных SDK вам следует ознакомиться с официальным PHP SDK или C # SDK. Существуют также официальные SDK для iOS и Android, если вы собираетесь использовать мобильные устройства.

Комментарии:

1. документация facebook скудна и фрагментирована. у меня такое чувство, что описанный выше метод будет успешным. не могли бы вы, пожалуйста, помочь немного доработать это, пожалуйста?

Ответ №2:

Для доступа к graph API требуется аутентификация: либо токен авторизации пользователя, либо токен авторизации приложения. Если вы не хотите, чтобы пользователю приходилось авторизовывать ваше приложение, вы могли бы создать свое приложение Facebook, попросив пользователя ввести свое имя Facebook vanity или Facebook id (если они это знают), а затем выполнить вход в приложение на сервере, чтобы получить конечную точку пользовательского graph API.

Будет беспорядочно: такое ощущение, что они намеренно усложнили работу без приложения, и я серьезно сомневаюсь, что это можно сделать из JavaScript API без приложения.