2

Использование ASP.NET Core MVC RC2 Я пытаюсь получить изображение профиля пользователя Facebook. Для этого у меня есть следующие строки в методе Настройки класса запускаКак получить изображение профиля пользователя facebook внутри ядра asp.net MVC RC2

  app.UseFacebookAuthentication(new FacebookOptions() 
     { 
      AppId = Configuration["Authentication:Facebook:AppId"], 
      AppSecret = Configuration["Authentication:Facebook:AppSecret"], 
      Scope = { "user_birthday" }, 
      Fields = { "birthday", "picture" }, 
     }); 

В методе AccountControllers ExternalLoginCallback я ожидал увидеть данные для изображения в коллекции ClaimsPrincipal, которые могут быть доступны через info.Principal но я не вижу никаких претензий, связанных с картинкой.

Это правильный способ получить изображение профиля пользователя Facebook или я что-то упустил?

ответ

2

Использование сторонней аутентификации, вы получаете информацию о том, кто является пользователем (аутентификация пользователя).

Использование Facebook аутентификации, после успешной регистрации вы получите маркер доступа к Facebook API и набор пользовательских данных (требований) только изUserInformationEndpoint (https://graph.facebook.com/v2.6/me).

После этого вы должны обратиться к методам API Facebook, если хотите получить любую другую пользовательскую информацию (например, изображение пользователя в вашем случае - Facebook Graph API. User Picture).

Если вы интересуетесь утверждениями о том, что реализация ASP.Core для входа в Facebook заполнена, рассматривается метод CreateTicketAsync в классе FacebookHandler - здесь создается коллекция претензий.

+0

Спасибо Задание для уточнения того, что коллекция основных требований содержит только данные из UserInformationEndpoint. – Coni

+0

Можете ли вы указать мне пример, который показывает, как вызвать методы facebook api – Coni

+0

проверить это http://stackoverflow.com/questions/11442442/get-user-profile-picture-by-id – Set