As P Facebook Login Ekleme

ASP.NET Core Uygulamasına Facebook Girişi Ekleme

ASP.NET Core uygulamanıza Facebook girişi eklemek, kullanıcıların Facebook hesaplarını kullanarak uygulamanıza giriş yapmalarını sağlamanın kolay bir yoludur. Bu, kullanıcı deneyimini iyileştirebilir ve uygulamanızın daha erişilebilir olmasını sağlayabilir.

1. Facebook Uygulaması Oluşturma

İlk adım, Facebook Geliştirici Konsolu’nda bir Facebook uygulaması oluşturmaktır. Bunu yapmak için şu adımları izleyin:

  1. Facebook Geliştirici Konsolu’na gidin: https://developers.facebook.com/
  2. “Uygulama Oluştur” düğmesine tıklayın.
  3. Uygulama adınızı ve kategorinizi girin.
  4. “Uygulama Oluştur” düğmesine tekrar tıklayın.

2. Uygulama Kimlik Bilgilerinizi Alın

Uygulamanız oluşturulduktan sonra, uygulama kimlik bilgilerinizi almanız gerekir. Bunlar, uygulamanızın Facebook ile iletişim kurmak için kullanacağı kimlik bilgileridir. Uygulama kimlik bilgilerinizi almak için şu adımları izleyin:

  1. Facebook Geliştirici Konsolu’nda uygulamanıza gidin.
  2. “Ayarlar” sekmesine tıklayın.
  3. “Temel Ayarlar” bölümünde, “Uygulama Kimliği” ve “Uygulama Sırrı” alanlarını bulun.
  4. Bu değerleri bir yere not edin.

3. ASP.NET Core Uygulamanıza Facebook Girişi Ekleme

ASP.NET Core uygulamanıza Facebook girişi eklemek için şu adımları izleyin:

  1. ASP.NET Core projenizi açın.
  2. Startup.cs dosyasını açın.
  3. Aşağıdaki kod satırlarını ConfigureServices metoduna ekleyin:

csharp
services.AddAuthentication()
.AddFacebook(facebookOptions =>
{
facebookOptions.AppId = "YOUR_APP_ID";
facebookOptions.AppSecret = "YOUR_APP_SECRET";
});

  1. Aşağıdaki kod satırlarını Configure metoduna ekleyin:

csharp
app.UseAuthentication();
app.UseAuthorization();

4. Facebook Girişi Sayfası Oluşturma

Kullanıcıların Facebook hesaplarını kullanarak giriş yapabilecekleri bir sayfa oluşturmanız gerekir. Bu sayfa, Facebook’a yönlendirmek için bir bağlantı içermelidir. Sayfayı oluşturmak için şu adımları izleyin:

  1. ASP.NET Core projenizde yeni bir Razor sayfası oluşturun.
  2. Sayfanın cshtml dosyasını açın.
  3. Aşağıdaki kod satırlarını sayfaya ekleyin:

html
<a href="@Url.Action("ExternalLogin", "Account", new { provider = "Facebook" })">Facebook ile Giriş Yap</a>

5. Dış Giriş İşleyicisi Oluşturma

Kullanıcılar Facebook hesaplarını kullanarak giriş yaptığında, ASP.NET Core uygulamanızın bu girişleri işleyebilmesi gerekir. Bunu yapmak için bir dış giriş işleyicisi oluşturmanız gerekir. İşleyiciyi oluşturmak için şu adımları izleyin:

  1. ASP.NET Core projenizde yeni bir sınıf oluşturun.
  2. Sınıfı IE的外登录处理程序 arayüzünden türetin.
  3. Aşağıdaki kod satırlarını sınıfa ekleyin:

“`csharp
public class FacebookLoginHandler : IExternalLoginHandler
{
private readonly UserManager _userManager;
private readonly SignInManager _signInManager;

public FacebookLoginHandler(UserManager<ApplicationUser> userManager, SignInManager<ApplicationUser> signInManager)
{
    _userManager = userManager;
    _signInManager = signInManager;
}

public async Task<ExternalLoginInfo> GetExternalLoginInfoAsync(string loginProvider, string providerKey)
{
    // Facebook'tan kullanıcı bilgilerini alın.
    var info = await _signInManager.GetExternalLoginInfoAsync(loginProvider, providerKey);
    if (info == null)
    {
        throw new InvalidOperationException("External login information not found.");
    }

    return info;
}

public async Task<SignInResult> SignInAsync(ExternalLoginInfo info, bool isPersistent)
{
    // Kullanıcıyı Facebook hesabıyla giriş yapmış olarak işaretleyin.
    var result = await _signInManager.ExternalLoginSignInAsync(info.LoginProvider, info.ProviderKey, isPersistent);
    if (result.Succeeded)
    {
        // Kullanıcıyı uygulamaya yönlendirin.
        return SignInResult.Success;
    }
    else
    {
        // Kullanıcıyı uygulamaya yönlendirmeyin.
        return SignInResult.Failed;
    }
}

}
“`

6. Dış Giriş İşleyicisini Kaydetme

Dış giriş işleyicisini ASP.NET Core uygulamanıza kaydetmeniz gerekir. Bunu yapmak için şu adımları izleyin:

  1. Startup.cs dosyasını açın.
  2. Aşağıdaki kod satırlarını ConfigureServices metoduna ekleyin:

csharp
services.AddSingleton<IExternalLoginHandler, FacebookLoginHandler>();

7. Uygulamayı Çalıştırma

ASP.NET Core uygulamanızı çalıştırın ve Facebook giriş sayfasına gidin. Facebook hesabınızla giriş yapmayı deneyin. Giriş başarılı olursa, uygulamaya yönlendirileceksiniz.

Faydalı Siteler ve Dosyalar


Yayımlandı

kategorisi