Facebook C # аутентификация, смешанная с формами - PullRequest
0 голосов
/ 11 сентября 2011

Любой, кто может предоставить образец или обновленное руководство о том, как создать страницу .net 4.0 MVC, в которой одновременно используются проверка подлинности с помощью формы и вход на Facebook.

Я хотел бы предоставить пользователям возможность использовать там логин Facebook, и если у них нет учетной записи, они могут создать учетную запись на нашей странице и использовать эту регистрационную информацию. (не хочу заставлять их создавать учетную запись Facebook).

Я создал проект MVC 3, добавил библиотеки Facebook, Facebook.web, Facebook.Web.Mvc и не знаю, как продолжить. Добавляем кнопку входа и смешиваем ее со стандартными формами входа в asp.net.

1 Ответ

1 голос
/ 11 сентября 2011

Если вы используете forms authentication, вы можете просто войти в систему с Facebook и использовать идентификатор пользователя при входе в систему, чтобы установить сессию форм.

Так же, как вы входите в систему, используя usernameи password текстовое поле, вы просто входите в систему пользователя, поскольку вы уже знаете, что user_id хочет продолжить на вашем сайте.

при использовании Facebook C # SDK вы можете просто установить свои APP_ID иAPP_SECRET в общем представлении и добавьте

<fb:login-button perms="email" size="medium">
        Login using your Facebook Account</fb:login-button>

Ваше действие теперь будет иметь возможность доступа к базовой информации пользователя плюс email, используйте эту информацию для хранения Facebook ID, а такжеВ следующий раз, когда пользователь подключится, просто используйте

FacebookWebContext.Current.IsAuthenticated()

и получите информацию из FB, как

var client = new FacebookWebClient();
dynamic me = client.Get("me");

ViewBag.Name = me.name;
ViewBag.Id = me.id;
ViewBag.Email = me.email;

со всей этой информацией, просто установите сеансы, которые вы используете с вашим поставщиком аутентификации форм.

...