{"id":56256,"date":"2025-07-22T10:07:49","date_gmt":"2025-07-22T03:07:49","guid":{"rendered":"https:\/\/www.rumahweb.com\/journal\/?p=56256"},"modified":"2026-02-16T10:24:13","modified_gmt":"2026-02-16T03:24:13","slug":"belajar-laravel-bagian-21","status":"publish","type":"post","link":"https:\/\/www.rumahweb.com\/journal\/belajar-laravel-bagian-21\/","title":{"rendered":"Belajar Laravel Bagian 21 &#8211; Membuat Fitur Login dengan Socialite"},"content":{"rendered":"\n<p>Sebelumnya, kita telah mempelajari cara <a href=\"https:\/\/www.rumahweb.com\/journal\/belajar-laravel-bagian-13\/\" target=\"_blank\" rel=\"noopener\" title=\"\">membuat fitur login<\/a> menggunakan email dan password yang tersimpan di database. Dalam artikel ini, kita akan melanjutkan belajar Laravel tentang bagaimana membuat fitur login dengan akun Google menggunakan Laravel Socialite.<\/p>\n\n\n\n<p>Sebelum masuk ke pembahasan cara membuat fitur loginnya, terlebih dahulu kita akan membahas tentang apa itu Laravel Socialite agar Anda lebih memahami artikel yang kami buat. Simak informasi berikut ini.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Apa itu Laravel Socialite?<\/h2>\n\n\n\n<p>Laravel socialite adalah sebuah <em>package<\/em> bawaan dari Laravel yang dapat membantu untuk membuat fitur login dengan menggunakan akun sosial media seperti Google, Github, Facebook, dan lainnya. <\/p>\n\n\n\n<p>Pengembangan fitur login dengan menggunakan Laravel socialite dapat memfasilitasi proses autentikasi pengguna melalui protokol OAuth, yang memungkinkan pengguna untuk masuk ke aplikasi menggunakan akun dari berbagai penyedia layanan sosial media.<\/p>\n\n\n\n<p>Dengan fitur ini, proses login menjadi jauh lebih mudah dan praktis bagi pengguna karena mereka tidak perlu lagi mengisi formulir pendaftaran secara manual, cukup dengan satu klik melalui akun sosial media mereka.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Kelebihan Laravel Socialite<\/h2>\n\n\n\n<p>Berikut adalah beberapa kelebihan Socialite yang dapat Anda gunakan sebagai fitur authentication login di aplikasi Laravel Anda. <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Integrasi otomatis dan mudah<\/strong>: Anda tidak perlu lagi menulis kode API otentikasi dari nol. Socialite menyediakan antarmuka yang bersih dan siap pakai untuk login via pihak ketiga.<\/li>\n\n\n\n<li><strong>Meningkatkan <em>user experience<\/em><\/strong>: Pengguna dapat login dengan satu klik melalui akun Google atau media sosial lainnya, tanpa harus membuat akun manual atau mengisi formulir panjang.<\/li>\n\n\n\n<li><strong>Menghemat waktu <em>developing<\/em><\/strong>: Dengan sedikit konfigurasi, Socialite mempercepat proses pengembangan fitur login modern yang aman dan efisien.<\/li>\n\n\n\n<li><strong>Aman karena dikelola oleh Laravel<\/strong>: Karena merupakan bagian dari ekosistem Laravel, Socialite mendapatkan pembaruan rutin dan dukungan komunitas yang kuat.<\/li>\n\n\n\n<li><strong>Mendukung banyak provider otentikasi<\/strong>: Tidak hanya Google, Anda juga dapat menambahkan login via Facebook, Twitter, GitHub, LinkedIn, Bitbucket, dan lainnya hanya dengan beberapa baris konfigurasi.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Membuat Fitur Login dengan google di Laravel <\/h2>\n\n\n\n<p>Pada seri belajar Laravel ini, kami akan menjelaskan cara membuat fitur login di Laravel menggunakan Socialite dengan akun Google. Kami memilih opsi ini karena login dengan Google adalah metode yang paling umum dan banyak digunakan saat ini. Berikut langkah-langkahnya:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Step 1. Membuat Oauth di google<\/h3>\n\n\n\n<p>Untuk membuat fitur login dengan menggunakan akun Google, kita perlu mendapatkan <em>client id<\/em>, <em>google client secret<\/em> dan juga google redirect url. <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Langkah pertama, untuk mendapatkan oauth client bisa dilakukan melalui halaman <a href=\"https:\/\/console.cloud.google.com\/apis\/dashboard\" target=\"_blank\" rel=\"noopener\" title=\"\">Google Cloud Console<\/a> pada menu credentials.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"348\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-1024x348.png\" alt=\"menu credentials console cloud google\" class=\"wp-image-56257\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-1024x348.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-300x102.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-768x261.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-1536x522.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-370x126.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-270x92.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-570x194.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7-740x252.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-7.png 1909w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pada halaman credentials, Anda bisa klik <strong>Create credentials<\/strong> kemudian memilih <strong>Oauth client ID<\/strong>.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"342\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-1024x342.png\" alt=\"Create credentials\" class=\"wp-image-56258\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-1024x342.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-300x100.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-768x257.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-1536x513.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-370x124.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-270x90.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-570x190.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-1500x500.png 1500w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8-740x247.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-8.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Kemudian Anda bisa memilih application tipe dengan Web Application, serta masukan nama projek Anda. Lalu tambahkan Authorized redirect URIs (contoh: http:\/\/127.0.0.1:8000\/auth\/google) Setelah isian lengkap, click button Create.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"508\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-1024x508.png\" alt=\"Generate oauth  di Google\" class=\"wp-image-56259\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-1024x508.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-300x149.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-768x381.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-1536x762.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-370x184.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-270x134.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-570x283.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9-740x367.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-9.png 1900w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Setelah itu, silahkan Anda dapat klik tombol <strong>create <\/strong>untuk membuat <em>Oauth client id<\/em> tersebut dan simpan <em>client id<\/em>, <em>client secret <\/em>serta <em>redirect url<\/em> untuk digunakan pada aplikasi Laravel Anda.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Step 2. Setup Laravel Socialite<\/h3>\n\n\n\n<p>Sebelum melakukan setup Laravel Socialite, Pastikan bahwa Anda telah melakukan instalasi socialite terlebih dahulu. Jika belum, Anda bisa menjalankan perintah berikut untuk install laravel socialite.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>composer require laravel\/socialite<\/code><\/pre>\n\n\n\n<p>Setelah install laravel socialite berhasil, silahkan setup pada file <em>bootstrap\/providers.php<\/em> lalu tambahkan kode berikut berikut : <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Laravel\\Socialite\\SocialiteServiceProvider::class,<\/code><\/pre>\n\n\n\n<p>Berikut adalah contoh penambahannya:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"438\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-1024x438.png\" alt=\"memasukan laravel socialite ke file bootstrap\/providers.php\" class=\"wp-image-56260\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-1024x438.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-300x128.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-768x329.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-370x158.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-270x116.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-570x244.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10-740x317.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-10.png 1126w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Selanjutnya, kita akan melakukan konfigurasi pada file <em>config\/services.php<\/em> untuk menambahkan <em>code <\/em>serta memanggil credentials yang nantinya kita masukan di file .env.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"432\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-1024x432.png\" alt=\"konfigurasi file config\/services.php\" class=\"wp-image-56261\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-1024x432.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-300x127.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-768x324.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-370x156.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-270x114.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-570x241.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11-740x312.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-11.png 1142w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Setelah itu, kita masuk ke file .env untuk memasukan credentials yang sudah kita dapatkan pada oauth Google tadi.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"390\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-1024x390.png\" alt=\"Memasukan credentials di file .env\" class=\"wp-image-56262\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-1024x390.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-300x114.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-768x293.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-370x141.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-270x103.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-570x217.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12-740x282.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-12.png 1066w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Step 3. Menambahkan kolom pada table user<\/h3>\n\n\n\n<p>Agar data oauth dari Google dapat tersimpan pada database, kita perlu menambahkan kolom baru pada table user dengan cara berikut untuk membuat migration data ke tabel user.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>php artisan make:migration google_social_auth_id --table=users<\/code><\/pre>\n\n\n\n<p>Selanjutnya, kita menambahkan <em>script <\/em>berikut pada file <em>database\/migrations\/file<\/em> google_social_auth_id yang sudah dibuat untuk menambahkan kolom gauth_id dan gauth_type ke dalam table users.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"810\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-1024x810.png\" alt=\"migration kolom google_social_auth_id \" class=\"wp-image-56264\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-1024x810.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-300x237.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-768x607.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-370x293.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-270x214.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-570x451.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13-740x585.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-13.png 1234w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Selanjutnya, kita migrate datanya ke database dengan menggunakan perintah berikut:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>php artisan migrate<\/code><\/pre>\n\n\n\n<p>Sebelumnya menambahkan kolom baru, kita perlu menyesuaikan model usernya pada file <em>app\/Models\/User.php<\/em> seperti gambar berikut:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14.png\"><img loading=\"lazy\" decoding=\"async\" width=\"650\" height=\"558\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14.png\" alt=\"Models User\" class=\"wp-image-56266\" style=\"width:302px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14.png 650w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14-300x258.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14-370x318.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14-270x232.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-14-570x489.png 570w\" sizes=\"auto, (max-width: 650px) 100vw, 650px\" \/><\/a><\/figure>\n<\/div>\n\n\n<h3 class=\"wp-block-heading\">Step 4. Membuat Controller login<\/h3>\n\n\n\n<p>Pada step ini, kita akan memuat <em>controller <\/em>login dengan 3 <em>method<\/em>. <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Pertama, untuk login dengan mengisikan email dan password yang sudah ada didatabase.<\/li>\n\n\n\n<li>Kita perlu mengarahkan pengguna ke penyedia OAuth (dalam hal ini Google). <\/li>\n\n\n\n<li>Menyiapkan <em>route <\/em>untuk menerima balasan atau <em>callback <\/em>dari Google setelah proses login berhasil. Untuk membuat <em>controller <\/em>dengan berikut :<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>php artisan make:controller LoginController<\/code><\/pre>\n\n\n\n<p>Setelah membuat controller login, kita perlu membuat <em>function <\/em>untuk memproses data yang akan digunakan untuk login ke aplikasi kita. Yang pertama, kita buat <em>function <\/em>login untuk login manual dengan menginputkan email serta password seperti panduan <a href=\"https:\/\/www.rumahweb.com\/journal\/belajar-laravel-bagian-20\/#Step_3_Membuat_isi_dari_controller_login\" target=\"_blank\" rel=\"noopener\" title=\"sebelumnya\">sebelumnya<\/a> yang sudah dibuat.<\/p>\n\n\n\n<p>Serta jangan lupa untuk menambahkan statement berikut:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>use Illuminate\\Support\\Facades\\Auth;\nuse App\\Models\\User;\nuse Laravel\\Socialite\\Facades\\Socialite;<\/code><\/pre>\n\n\n\n<p>yang kedua, kita membuat <em>function <\/em>yang mengarahkan pengguna ke penyedia OAuth (dalam hal ini Google).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"398\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-1024x398.png\" alt=\"function yang mengarahkan pengguna ke penyedia OAuth\" class=\"wp-image-56268\" style=\"width:479px;height:auto\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-1024x398.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-300x117.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-768x299.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-370x144.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-270x105.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-570x222.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15-740x288.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-15.png 1142w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n<\/div>\n\n\n<p>Yang terakhir, kita buat <em>function <\/em>untuk menyiapkan <em>route <\/em>agar menerima balasan atau <em>callback <\/em>dari Google setelah proses login berhasil.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16.png\"><img loading=\"lazy\" decoding=\"async\" width=\"879\" height=\"1024\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-879x1024.png\" alt=\"Controller function route agar menerima balasan atau callback dari Google\" class=\"wp-image-56270\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-879x1024.png 879w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-257x300.png 257w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-768x895.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-370x431.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-270x315.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-570x664.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16-740x862.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-16.png 1294w\" sizes=\"auto, (max-width: 879px) 100vw, 879px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Step 5. Membuat view login <\/h3>\n\n\n\n<p>Pada step ini, kita akan membuat tampilan view <em>formlogin <\/em>yang akan dipakai untuk menginputkan email dan password untuk loginnya atau menggunakan login dengan Hoogle. Dan juga kita akan membuat tampilan view setelah loginnya :<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Script view Login<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n    &lt;title&gt;Login&lt;\/title&gt;\n    &lt;link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;div class=\"container d-flex justify-content-center align-items-center vh-100\"&gt;\n        &lt;div class=\"card p-4 shadow\" style=\"width: 400px;\"&gt;\n            &lt;h3 class=\"text-center\"&gt;Login&lt;\/h3&gt;\n            &lt;form method=\"POST\" action=\"{{ route('login') }}\"&gt;\n                @csrf\n                &lt;div class=\"mb-3\"&gt;\n                    &lt;label for=\"email\" class=\"form-label\"&gt;Email&lt;\/label&gt;\n                    &lt;input type=\"email\" name=\"email\" class=\"form-control\" id=\"email\" required autofocus&gt;\n                    @error('email')\n                        &lt;div class=\"text-danger\"&gt;{{ $message }}&lt;\/div&gt;\n                    @enderror\n                &lt;\/div&gt;\n                &lt;div class=\"mb-3\"&gt;\n                    &lt;label for=\"password\" class=\"form-label\"&gt;Password&lt;\/label&gt;\n                    &lt;input type=\"password\" name=\"password\" class=\"form-control\" id=\"password\" required&gt;\n                    @error('password')\n                        &lt;div class=\"text-danger\"&gt;{{ $message }}&lt;\/div&gt;\n                    @enderror\n                &lt;\/div&gt;\n                &lt;div class=\"d-flex gap-2\"&gt;\n                    &lt;button type=\"submit\" class=\"btn btn-primary shadow-sm w-50\"&gt;Login&lt;\/button&gt;\n                    &lt;a href=\"{{ route('auth') }}\" class=\"btn btn-white w-50 shadow-sm border\"&gt;\n                        &lt;svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 48 48\" style=\"vertical-align:middle;margin-right:6px;\"&gt;\n                            &lt;path fill=\"#4285F4\" d=\"M24 9.5c3.54 0 6.7 1.22 9.19 3.22l6.85-6.85C35.44 2.36 29.97 0 24 0 14.61 0 6.27 5.7 2.13 14.01l8.01 6.23C12.36 13.16 17.73 9.5 24 9.5z\"\/&gt;\n                            &lt;path fill=\"#34A853\" d=\"M46.1 24.5c0-1.64-.15-3.22-.42-4.75H24v9.02h12.44c-.54 2.92-2.17 5.39-4.62 7.06l7.19 5.59C43.73 37.36 46.1 31.44 46.1 24.5z\"\/&gt;\n                            &lt;path fill=\"#FBBC05\" d=\"M10.14 28.24c-.62-1.86-.98-3.84-.98-5.89s.36-4.03.98-5.89l-8.01-6.23C.73 13.97 0 18.81 0 24c0 5.19.73 10.03 2.13 14.01l8.01-6.23z\"\/&gt;\n                            &lt;path fill=\"#EA4335\" d=\"M24 48c6.48 0 11.93-2.14 15.91-5.84l-7.19-5.59c-2.01 1.35-4.59 2.15-8.72 2.15-6.27 0-11.64-3.66-13.86-8.74l-8.01 6.23C6.27 42.3 14.61 48 24 48z\"\/&gt;\n                        &lt;\/svg&gt;\n                        Login with Google\n                    &lt;\/a&gt;\n                &lt;\/div&gt;\n            &lt;\/form&gt;\n        &lt;\/div&gt;\n    &lt;\/div&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Script view setelah login<\/h4>\n\n\n\n<pre class=\"wp-block-code\"><code>\n&lt;!DOCTYPE html&gt;\n&lt;html lang=\"en\"&gt;\n&lt;head&gt;\n    &lt;meta charset=\"UTF-8\"&gt;\n    &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\n    &lt;title&gt;Beranda Setelah Login&lt;\/title&gt;\n    &lt;link href=\"https:\/\/cdn.jsdelivr.net\/npm\/bootstrap@5.3.0\/dist\/css\/bootstrap.min.css\" rel=\"stylesheet\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;nav class=\"navbar navbar-light bg-light mb-4\"&gt;\n        &lt;div class=\"container-fluid\"&gt;\n            &lt;span class=\"navbar-brand mb-0 h1\"&gt;Selamat Datang&lt;\/span&gt;\n        &lt;\/div&gt;\n    &lt;\/nav&gt;\n    &lt;div class=\"container\"&gt;\n        &lt;div class=\"row justify-content-center\"&gt;\n            &lt;div class=\"col-md-6\"&gt;\n                &lt;div class=\"card shadow-sm\"&gt;\n                    &lt;div class=\"card-body text-center\"&gt;\n                        {{-- &lt;h4 class=\"mb-3\"&gt;Halo, {{ Auth::user()-&gt;name ?? 'User' }}!&lt;\/h4&gt; --}}\n                        &lt;p&gt;Anda berhasil login.&lt;\/p&gt;\n                    &lt;\/div&gt;\n                &lt;\/div&gt;\n            &lt;\/div&gt;\n        &lt;\/div&gt;\n    &lt;\/div&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Step 6. Membuat route <\/h3>\n\n\n\n<p>Di dalam file&nbsp;<em>routes\/web.php<\/em>, tambahkan route untuk menampilkan form login dan untuk memproses login.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"388\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-1024x388.png\" alt=\"Membuat route \" class=\"wp-image-56272\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-1024x388.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-300x114.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-768x291.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-1536x583.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-2048x777.png 2048w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-370x140.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-270x102.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-570x216.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-17-740x281.png 740w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Step 7. Pengujian<\/h3>\n\n\n\n<p>Langkah terakhir sesi belajar Laravel untuk membuat halaman login dengan Socialite adalah melakukan pengujian. Silahkan dapat menjalankan <code>php artisan serve<\/code> untuk menjalankan website Anda. Kemudian, silahkan lakukan login dengan Google seperti tampilan form login berikut:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"472\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-1024x472.png\" alt=\"Tampilan form login\" class=\"wp-image-56273\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-1024x472.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-300x138.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-768x354.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-1536x708.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-370x170.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-270x124.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-570x263.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18-740x341.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-18.png 1917w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Setelah login, halaman akan di redirect oleh Google seperti berikut:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"466\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-1024x466.png\" alt=\"Tampilan redirect google - Belajar Laravel\" class=\"wp-image-56275\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-1024x466.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-300x136.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-768x349.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-1536x699.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-370x168.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-270x123.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-570x259.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20-740x337.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-20.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Jika berhasil, maka akan masuk ke halaman dashboard atau login seperti gambar berikut.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"431\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-1024x431.png\" alt=\"Tampilan setelah login\" class=\"wp-image-56276\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-1024x431.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-300x126.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-768x323.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-1536x646.png 1536w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-370x156.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-270x114.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-570x240.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21-740x311.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-21.png 1919w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Cek di database, apakah data email google telah masuk atau belum. Jika berhasil, maka data akan terinput di database seperti gambar berikut.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"376\" src=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-1024x376.png\" alt=\"Data user di database - Belajar Laravel Bagian 21\" class=\"wp-image-56277\" srcset=\"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-1024x376.png 1024w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-300x110.png 300w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-768x282.png 768w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-370x136.png 370w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-270x99.png 270w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-570x209.png 570w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22-740x272.png 740w, https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/image-22.png 1410w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>Anda juga dapat menyesuaikan <em>controller <\/em>login, sehingga setelah user login dapat diarahkan ke halaman tertentu sesuai dengan kebutuhan website Anda.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Penutup<\/h2>\n\n\n\n<p>Laravel Socialite adalah solusi mudah untuk menambahkan fitur login modern dan <em>user-friendly<\/em> ke dalam aplikasi Laravel Anda. Selain mempercepat <em>developing<\/em>, Socialite juga memberikan pengalaman login yang lebih nyaman bagi pengguna. <\/p>\n\n\n\n<p>Bagi Anda yang sedang belajar Laravel atau tengah mengembangkan proyek skala profesional, Socialite dapat menjadi alat bantu penting dalam membangun sistem otentikasi yang efisien dan aman.<\/p>\n\n\n\n<p>Pada series belajar laravel <a href=\"https:\/\/www.rumahweb.com\/journal\/belajar-laravel-bagian-22\/\" target=\"_blank\" rel=\"noopener\" title=\"\">bagian 22<\/a>, kita akan belajar bagaimana cara membuat fitur forgot password di Laravel dengan mudah. <\/p>\n\n\n\n<p>Demikian seri belajar Laravel bagian 21 tentang cara membuat fitur login ke aplikasi Laravel dengan Socialite. Simak terus seri belajar Laravel kami selanjutnya ya. Semoga bermanfaat.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sebelumnya, kita telah mempelajari cara membuat fitur login menggunakan email dan password yang tersimpan di database. Dalam artikel ini, kita akan melanjutkan belajar Laravel tentang bagaimana membuat fitur login dengan akun Google menggunakan Laravel Socialite. Sebelum masuk ke pembahasan cara membuat fitur loginnya, terlebih dahulu kita akan membahas tentang apa itu Laravel Socialite agar Anda [&hellip;]<\/p>\n","protected":false},"author":357,"featured_media":56374,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[7],"tags":[1587,796,2507,1497],"class_list":{"0":"post-56256","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-web-programming","8":"tag-belajar-laravel","9":"tag-laravel","10":"tag-socialite","11":"tag-tutorial-laravel"},"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.rumahweb.com\/journal\/wp-content\/uploads\/2025\/07\/banner-belajar-laravel-bagian-21.png","jetpack_shortlink":"https:\/\/wp.me\/p8n3G7-eDm","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/56256","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/users\/357"}],"replies":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/comments?post=56256"}],"version-history":[{"count":2,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/56256\/revisions"}],"predecessor-version":[{"id":61904,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/posts\/56256\/revisions\/61904"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media\/56374"}],"wp:attachment":[{"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/media?parent=56256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/categories?post=56256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.rumahweb.com\/journal\/wp-json\/wp\/v2\/tags?post=56256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}