Firebase Auth & Realtime Database Apps · Урок

Аутентификация через Facebook и GitHub

Добавьте Facebook и GitHub в качестве поставщиков аутентификации и настройте приложение и Firebase для входа через социальные сети

Урок 2 из 411 шагов

«Аутентификация через Facebook и GitHub» — бесплатный урок Firebase Auth & Realtime Database Apps на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Firebase Auth & Realtime Database Apps, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Firebase Auth & Realtime Database Apps содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

Social Logins: Facebook & GitHub

Welcome! In this lesson, we'll dive into integrating two popular social login options: Facebook and GitHub.

Using social providers like these can significantly improve the user experience by offering quick, familiar sign-up and login methods.

Why Offer Social Logins?

Social logins provide a seamless experience for your users. Here's why they're great:

  • Convenience: Users can sign in with accounts they already have.
  • Reduced Friction: No need to create new usernames or passwords.
  • Trust: Users often feel more secure using established platforms.
  • Faster Onboarding: Quick access to your app's features.

Facebook App Setup: Developer Console

Before enabling Facebook login in Firebase, you need to create an app on the Facebook for Developers platform.

  • Go to developers.facebook.com and create a new app.
  • Choose the 'Consumer' type for typical user authentication.
  • Note down your App ID and App Secret; you'll need them for Firebase.

Facebook Login Product Configuration

After creating your Facebook app, you must configure the 'Facebook Login' product:

  • In your Facebook App Dashboard, add the 'Facebook Login' product.
  • Under 'Settings' for Facebook Login, ensure 'Web OAuth Login' is enabled.
  • Add your Firebase OAuth redirect URI (found in Firebase Auth settings) to 'Valid OAuth Redirect URIs'. This is crucial for security.

Firebase Console: Enable Facebook

Now, let's enable Facebook as an authentication provider in Firebase:

  1. Navigate to the Authentication section in your Firebase project console.
  2. Go to the 'Sign-in method' tab.
  3. Click 'Add new provider' and select Facebook.
  4. Paste your Facebook App ID and App Secret into the fields provided.
  5. Make sure to enable the provider and save your changes!

Code: Facebook Sign-In

Once configured, you can use the Firebase SDK to sign in users with Facebook. This JavaScript example shows the core logic, typically triggered by a button.

/* This is a conceptual example for web/JS.
   Firebase SDK must be initialized before use. */

// 1. Get Auth instance & Facebook provider
const auth = firebase.auth();
const provider = new firebase.auth.FacebookAuthProvider();

// 2. Define the sign-in function
function signInWithFacebook() {
  console.log("Attempting Facebook sign-in...");
  auth.signInWithPopup(provider)
    .then((result) => {
      // User successfully signed in
      const user = result.user;
      console.log("Logged in as:", user.displayName);
    })
    .catch((error) => {
      // Handle errors (e.g., user cancelled, network error)
      console.error("Facebook login failed:", error.message);
    });
}

// Call the function (in a real app, this is a button click)
signInWithFacebook();

GitHub App Setup: Developer Console

Integrating GitHub is similar to Facebook. First, you need to create an OAuth App on GitHub:

  • Go to github.com/settings/developers.
  • Click 'New OAuth App'.
  • Fill in the 'Application name', 'Homepage URL'.
  • For 'Authorization callback URL', use your Firebase OAuth redirect URI.
  • Click 'Register application' and note your Client ID and Client Secret.

Firebase Console: Enable GitHub

Next, enable GitHub as an authentication provider in your Firebase project:

  1. In the Firebase console, go to Authentication > Sign-in method.
  2. Click 'Add new provider' and select GitHub.
  3. Paste your GitHub Client ID and Client Secret into the respective fields.
  4. Enable the provider and save your changes.

The Firebase OAuth redirect URI for GitHub will be displayed here, ensure it matches what you entered on GitHub.

Code: GitHub Sign-In

Just like Facebook, once GitHub is configured, you can use the Firebase SDK to sign in users. This JavaScript snippet illustrates the process.

/* This is a conceptual example for web/JS.
   Firebase SDK must be initialized before use. */

// 1. Get Auth instance & GitHub provider
const auth = firebase.auth();
const provider = new firebase.auth.GithubAuthProvider();

// 2. Define the sign-in function
function signInWithGitHub() {
  console.log("Attempting GitHub sign-in...");
  auth.signInWithPopup(provider)
    .then((result) => {
      // User successfully signed in
      const user = result.user;
      console.log("Logged in as:", user.displayName);
    })
    .catch((error) => {
      // Handle errors (e.g., user cancelled, network error)
      console.error("GitHub login failed:", error.message);
    });
}

// Call the function (in a real app, this is a button click)
signInWithGitHub();

Quick Check: Social Login Setup

You've learned the steps to integrate social logins. Which of these are essential for setting up a new social authentication provider (like Facebook or GitHub) with Firebase?

Recap: Facebook & GitHub Auth

Great job! In this lesson, you learned how to add Facebook and GitHub authentication to your Firebase project.

  • We covered creating developer apps on each platform.
  • You saw how to configure the necessary settings, including OAuth redirect URIs.
  • Finally, we enabled these providers in the Firebase console and looked at conceptual code for signing users in.

Social logins simplify user onboarding and enhance your app's accessibility!

Можно начать бесплатно

Изучай Firebase Auth & Realtime Database Apps с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
11
Уроки
44

Часто задаваемые вопросы

Урок «Аутентификация через Facebook и GitHub» бесплатный?

Да — полный текст урока «Аутентификация через Facebook и GitHub» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Firebase Auth & Realtime Database Apps, подпишись на CoddyKit PRO. Курс Firebase Auth & Realtime Database Apps содержит 4 уроков всего.

Чему я научусь в уроке «Аутентификация через Facebook и GitHub»?

Добавьте Facebook и GitHub в качестве поставщиков аутентификации и настройте приложение и Firebase для входа через социальные сети Ты практикуешь Firebase Auth & Realtime Database Apps с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Firebase Auth & Realtime Database Apps?

Предыдущий опыт не требуется. Firebase Auth & Realtime Database Apps на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Аутентификация через Facebook и GitHub»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Firebase Auth & Realtime Database Apps?

Да. Каждый урок Firebase Auth & Realtime Database Apps включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Интеграция входа через Google
  2. Аутентификация через Facebook и GitHub
  3. Анонимная и настраиваемая аутентификация
  4. Интеграция входа через Apple
← Назад к Firebase Auth & Realtime Database Apps