How to Login with Google in Laravel

AuthorSumit Dey Sarkar

Pubish Date22 Mar 2023

categoryLaravel

In this tutorial we will learn how to login with google in laravel.

 

How to login with google in laravel

To enable users to log in using their Google account in a Laravel application, you can follow the steps below:

 

Step 1: Create a Google API Console Project

  • Go to Google API Console https://console.developers.google.com/ and create a new project.
  • Enable the Google+ API by navigating to the Library section and searching for "Google+ API", then clicking on "Enable".
  • Create a set of credentials for the project, by navigating to the Credentials section and clicking on "Create Credentials" and selecting "OAuth client ID".
  • Choose "Web application" as the application type and set the "Authorized JavaScript origins" and "Authorized redirect URIs" as appropriate for your application.

 

Step 2: Install the Laravel Socialite Package

  • Laravel Socialite is a package that makes it easy to authenticate with third-party OAuth providers, including Google.
  • Install it via Composer by running the following command in your terminal:
composer require laravel/socialite

 

Step 3: Configure Laravel to Use Socialite

  • In your Laravel application, open the config/services.php file and add the following configuration for Google:
'google' => [
    'client_id' => env('GOOGLE_CLIENT_ID'),
    'client_secret' => env('GOOGLE_CLIENT_SECRET'),
    'redirect' => env('GOOGLE_REDIRECT'),
],

 

Step 4: Add Google Login Button to Your Application

  • In your application, add a button that will redirect the user to the Google login page. This can be done using a simple HTML link, or by using a package like Laravel Socialite UI.

 

Step 5: Handle the Callback from Google

  • After the user logs in with Google, they will be redirected back to your application with an access token.
  • Create a route in your application that will handle the callback from Google and redirect the user to their dashboard or other appropriate page.
  • In your controller method that handles the callback, use Laravel Socialite to get the user details and log them in:

 

use Laravel\Socialite\Facades\Socialite;

public function handleGoogleCallback()
{
    $user = Socialite::driver('google')->user();

    // Check if the user exists in your application database, and if not, create a new user.
    // Then log in the user and redirect to their dashboard or other appropriate page.
}

 

And that's it! With these steps, your Laravel application will be able to authenticate users with their Google account.

Comments 0

Leave a comment