Найти аватар Google+ для данного адреса электронной почты без OAuth

В моем приложении я хочу показать изображение профиля Google+ для пользователя. Единственная функция, которую я нашел в API, для получения изображения профиля требует идентификатора пользователя. Однако у меня есть только их адрес электронной почты, а не их идентификатор пользователя Google+.
Более того, человека, чье изображение я хочу получить, не следует заставлять входить в систему и авторизовывать мое приложение, так как этот человек в большинстве случаев не идентичен пользователю приложения.

Поэтому я думаю, что мне нужно получить их идентификатор пользователя по электронной почте. Я прочитал документацию API Google+, но не могу найти способ сделать это, но я не могу поверить, что это невозможно.

Итак, мой вопрос:
Как я могу получить идентификатор пользователя Google+, используя только адрес электронной почты?
Может быть, есть другой API Google для получения изображения профиля?


person pre    schedule 09.01.2013    source источник
comment
Это было давно, но смотрели ли вы Gravatar? Это не фотографии профиля Google, но, похоже, он неплохо справляется с фотографиями профилей пользователей. en.gravatar.com/site/implement/images   -  person jamie-wilson    schedule 12.03.2014


Ответы (4)


Существует API, предоставляемый https://www.avatarapi.com/, который возвращает имя и профиль пользователя. изображение с адреса электронной почты на основе общедоступной информации Google.

Его можно вызвать через SOAP или HTTP в этой конечной точке API: https://www.avatarapi.com/avatar.asmx

Одним из преимуществ этого API является то, что он не требует аутентификации пользователя в Google через OAUTH, так что это может быть именно то, что вы ищете.

person Fiach Reid    schedule 31.07.2016
comment
Это именно то, что мне нужно, но они не предоставляют конечную точку https..... - person The Muffin Man; 01.11.2016
comment
@TheMuffinMan — avatarapi.com/avatar.asmx — это конечная точка https. - person Fiach Reid; 19.12.2016

Вы не можете сделать это, используя только их адрес электронной почты, однако, если они вставят свой URL-адрес Google+, вы можете проанализировать идентификатор из строки URL-адреса, а затем получить изображение их профиля (и изображение обложки!), используя API общедоступных данных. URL-адрес: https://plus.google.com/me приведет вас к их профилю.

person class    schedule 09.01.2013

Я очень сомневаюсь, что это возможно. Для любых запросов к Google Plus API требуется OAUTH. Более того, я вообще не знаю, как запросить идентификатор пользователя по адресу электронной почты.

Эта ветка, похоже, подтверждает, что это в настоящее время невозможно.

person Madbreaks    schedule 09.01.2013

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

Единственными методами API, для которых требуется OAuth, являются те, которые обращаются к личным данным. Для общедоступных данных можно использовать более простой метод ключа API.

Чтобы надежно достичь того, что вы описываете, вам нужно использовать Oauth и область действия plus.me для получения нужной информации. Однако для этого требуется авторизация вашего приложения.

person BrettJ    schedule 09.01.2013