Получение изображения профиля в Facebook с адреса электронной почты - PullRequest
14 голосов
/ 28 июня 2010

Я пытаюсь получить фотографию профиля пользователя Facebook на основе его адреса электронной почты.По сути, я хочу предложить своим пользователям выбор между использованием Gravatar для их изображения или Facebook.Тем не менее, единственный известный мне способ получения изображения Facebook - это:

http://graph.facebook.com/[FBOOK USERNAME]/picture?type=large

Поскольку имена пользователей могут различаться в зависимости от Facebook и моего сайта, я хотел бы сделать это черезадрес электронной почты, а не имя пользователя.Как я могу запросить чью-то фотографию профиля в фейсбуке по адресу электронной почты?

Ответы [ 3 ]

22 голосов
/ 21 августа 2012

Я вижу, что этот вопрос существует уже пару лет, но тот же подход к поиску можно использовать с помощью Graph API:

GET https://graph.facebook.com/search?q={EMAIL}&type=user

Вы можете попробовать это на Graph API Explorer .Вы не получаете изображение профиля напрямую, но получаете идентификатор пользователя, который вы можете легко использовать для получения общедоступного изображения профиля.

https://graph.facebook.com/{UID}/picture

5 голосов
/ 02 декабря 2010

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

1) Визит http://www.facebook.com/#!/search.php?q=#{USERS_EMAIL_ADDRESS}&type=all&init=srp

2) Если страница возвращает «По вашему запросу ничего не найдено», значит, они не имеют профиля.

3) В противном случае на странице будет указан эскиз пользователя для этого адреса электронной почты. (что-то вроде http://profile.ak.fbcdn.net/hprofile-ak-snc4/hs227.ash2/48219_72120057_3223_q.jpg)

Я мог бы написать приложение sinatra, чтобы сделать это примерно через 5 минут, если бы кто-нибудь захотел, чтобы я.

Но я думаю, что gravatar и facebook должны быть просто друзьями.

0 голосов
/ 28 июня 2010

То, что вы просите сделать, является частью того, почему существует Facebook Connect.

Используя XFBML с не очень умным именем, вы можете запросить изображение напрямую: <fb:profile-pic uid="1256100362" facebook-logo="true" size="thumb"> </fb:profile-pic>

Но сначала нужно выполнить вход с помощью FB Connect ...

...