Aitzaz Ahsan Ответов: 1

Как войти в систему с помощью face book in ASP.NET веб-сайт MVC


[AllowAnonymous]
public ActionResult Facebook()
{
    var fb = new FacebookClient();
    var loginUrl = fb.GetLoginUrl(new
    {
        client_id = "xxxxxx",
        client_secret = "xxxxx",
        redirect_uri = RedirectUri.AbsoluteUri,
        response_type = "code",
        scope = "email"
    });

    return Redirect(loginUrl.AbsoluteUri);
}
public ActionResult FacebookCallback(string code)
{
    var fb = new FacebookClient();
    dynamic result = fb.Post("oauth/access_token", new
    {
        client_id = "xxxxxx",
        client_secret = "xxxx",
        redirect_uri = RedirectUri.AbsoluteUri,
        code = code
    });

    var accessToken = result.access_token;

    // Store the access token in the session for farther use
    Session["AccessToken"] = accessToken;

    // update the facebook client with the access token so
    // we can make requests on behalf of the user
    fb.AccessToken = accessToken;

    // Get the user's information, like email, first name, middle name etc
    dynamic me = fb.Get("me?fields=first_name,middle_name,last_name,id,email");
    string email = me.email;
    string firstname = me.first_name;
    string middlename = me.middle_name;
    string lastname = me.last_name;
    if (ModelState.IsValid)
    {
        User _user = new User();
        _user.FullName = firstname;
        _user.Email = email;
        _user.PhoneNo = "";
        // _user.Password = model.Security.Password;
        //_user.RetypePassword = model.Security.RetypePassword;
        //_user.CityId = model.Security.CityId;
        //_user.IsUpdate = model.Security.IsUpdate;
        _user.StatusId = (byte)Utilities.Status.Active;
        _user.EmailConfirmed = true;
        _user.Image = "/images/business.png";
        _user.CreatedDate = DateTime.Now;
        _user.ModifiedDate = DateTime.Now;
        _user.CreatedBy = 1;
        var userObj = seuritybll.Insert(_user);
        Session["User"] = me;
        Session["UserName"] = firstname;
        return RedirectToAction("Index", "Home");
        //return RedirectToAction("RegistrationSuccessfull");
    }
    // Set the auth cookie
    FormsAuthentication.SetAuthCookie(email, false);
    return RedirectToAction("Index", "Home");
}


Что я уже пробовал:

Я использовал вышеописанный код для входа в facebook в asp.net веб-сайт mvc
Но с помощью этого кода я могу войти в систему только из своего аккаунта facebook.Когда я вошел в систему с другой учетной записи, он выдал ошибку типа "ваше приложение не создано в опции разработчика", я перешел по этой ссылке
можете ли вы помочь мне, пожалуйста
https://www..com/Articles/577384/Introduction-to-OAuth-in-ASP-NET-MVC

1 Ответов

Рейтинг:
8

Aitzaz Ahsan

я уже читал эту тему, она отлично работает в этом случае, когда я создал App ID и App Secrete of mine acoount, когда я вошел в систему с другой учетной записи, она выдала ошибки типа " pp Not Setup: это приложение все еще находится в режиме разработки, и у вас нет доступа к нему. Переключитесь на зарегистрированного тестового пользователя или попросите разрешения у администратора приложения."
но когда я вхожу в свою учетную запись, она работает нормально, можете ли вы сказать мне

manu_dhobale

Вы должны перейти в настройки обзора приложения, см. ссылку ниже

http://fellowtuts.com/html-css/facebook-app-is-still-in-development-mode-dont-have-access/

Aitzaz Ahsan

Большое вам спасибо, теперь он работает нормально, спасибо... Отличный...

Aitzaz Ahsan

manu_dhobale когда я вхожу в систему с Facebook, эти хэши "# _ = _ " добавляются в конце Url-адреса
как я могу решить эту проблему