Как использовать DotNetOpenAuth для входа в Google и получения профиля пользователя


Я просто хочу войти в систему с помощью google и получить доступ к общему профилю пользователя, такому как фотография, адрес электронной почты и имя, для отображения на моем сайте. Возможно ли это с помощью DotNetOpenAuth?

1 3

1 ответ:

Это тривиально просто. Используйте OpenID, чтобы "просто войти", вместо OAuth. Посмотрите примеры OpenIdRelyingPartyWebForms или OpenIdRelyingPartyMvc, чтобы узнать, как войти в систему пользователя. Поскольку вы заинтересованы только в регистрации Пользователя с помощью Google, вместо отображения поля ввода вы можете просто иметь кнопку "Войти с помощью Google", которая вызывает OpenIdRelyingParty.CreateRequest("https://www.google.com/accounts/o8/id"), чтобы инициировать вход в Google.

Как указал @Lirik в комментарии, Вы можете использовать AX дляполучения информации о профиле пользователя . Однако я этого не делаю подумайте , что вы получите фотографию пользователя. Если Google даже сделает это доступным (big if), вам, возможно, придется использовать OAuth для этого. И я бы рекомендовал в этом случае использовать расширение" OpenID+OAuth "для этого, которое, как я полагаю, приведет вас к образцу" Google Contacts", который вы уже видели. Чтобы изменить это, чтобы получить фотографию пользователя, однако, вам нужно будет просмотреть собственную документацию Google GData API, чтобы увидеть, как получить фотографию пользователя (если вы можете).