Tutorial Laravel Breeze: Panduan Definitif (2023)

SHARE :

Pendahuluan

Laravel 8 membawa banyak peningkatan pada Laravel dan banyak lagi paket seperti Laravel Breeze untuk dipelajari dan dikuasai.

Salah satu paket yang paling terkenal adalah Laravel Breeze, sebuah aplikasi start kit yang dirancang dengan indah untuk Laravel 8, dan dilengkapi dengan penerapan otentikasi dan otorisasi.

Jika Anda pernah menggunakan Laravel Jetstream sebelumnya, Anda akan melihat bahwa itu sedikit berlebihan dan memiliki kurva belajar yang kaku.

Oleh karena itu, Laravel Breeze dikembangkan untuk membuat Anda siap dengan cepat dan sederhana.

Pada artikel ini, kami akan mengeksplorasi semua yang Anda butuhkan untuk menguasai Laravel Breeze.

Kami akan melihat panduan instalasi dan mendiskusikan berbagai proses otentikasi yang dihasilkan dengan Laravel Breeze.

Pada akhirnya, Anda akan nyaman menggunakan Laravel Breeze.

Apa itu Laravel Breeze

Laravel Breeze adalah perancah Laravel Auth baru yang hadir dengan lebih banyak fitur dan kesederhanaan. Muncul dengan semua fitur autentikasi Laravel ditambah gaya Tailwind CSS dan template blade gaya kami.

Gambaran umum fitur Otentikasi Laravel

Laravel Breeze membuat semua pengontrol, rute, dan tampilan yang diperlukan untuk mengatur dan mengonfigurasi fitur autentikasi seperti login, registrasi, lupa kata sandi, reset kata sandi, verifikasi email, dan konfirmasi kata sandi.

Salah satu perbedaan antara Laravel Breeze dan lainnya adalah pengenalan CSS Tailwind langsung dari kotaknya.

Juga, Laravel telah memperkenalkan banyak starter kit aplikasi, bingung untuk mengetahui mana yang digunakan untuk apa.

Mari kita jelajahi sedikit dari masing-masingnya:

Laravel JetStream

Laravel JetStream adalah perancah aplikasi yang lebih kuat dengan lebih banyak fitur dan tumpukan teknologi frontend tambahan.

Ini adalah aplikasi lengkap dan scaffolding autentikasi dengan fitur tambahan seperti autentikasi dua faktor, manajemen sesi, manajemen tim opsional, termasuk semua fitur angin Laravel.

Itu juga dirancang dengan Tailwind CSS, dan Anda dapat memilih inersia atau livewire untuk scaffolding frontend.

Anda dapat mempelajari lebih lanjut tentang Laravel Jetstream di sini.

Laravel Sanctum

Laravel Sanctum adalah scaffolding autentikasi untuk aplikasi satu halaman (SPA) dan API.

Ini memecahkan dua masalah berbeda: mengelola token API dengan menerbitkan token kepada pengguna menggunakan OAuth dan SPA oleh layanan otentikasi sesi berbasis cookie bawaan Laravel untuk mengautentikasi SPA.

Anda dapat membaca lebih lanjut tentang Laravel Sanctum di sini.

Selanjutnya, kita akan menjelajahi Laravel Breeze dan bagaimana proses autentikasi benar-benar bekerja:

Instalasi Laravel Breeze

Jika Anda sudah menginstal Laravel, mari jalankan skrip berikut untuk menginstal dan mengatur Laravel Breeze.

composer require laravel/breeze --dev

php artisan breeze:install

npm install

npm run dev

php artisan migrate

Itu saja yang perlu Anda lakukan.

Menjelaskan Alur Login

Alur login dari Laravel Breeze cukup mudah dengan modernitas dan prinsip kode bersih yang diterapkan padanya.

Mari kita bahas bagaimana alur login dibuat:

Pertama, buka resources/views/auth/login.blade.php untuk melihat konten formulir login yang dikembangkan dan ditata dengan Tailwind CSS, tentu saja Anda dapat menyesuaikannya agar sesuai dengan desain Anda.

Saat tombol kirim diklik, permintaan dikirim dari file route/auth.php  ke metode penyimpanan dari file AuthenticatedSessionController.php baru di ../Controllers/Authfolder.

Jika Anda melihat metode store, banyak yang berubah, tetapi login utama dan logika validasi ditemukan di bawah metode  $request->authenticate() , yang terletak di bawah   app/Http/Requests/Auth/LoginRequest.php  

Anda dapat mempelajari basis kode dengan sangat baik, tetapi itu hanya memvalidasi pengguna dan mencoba mengautentikasi pengguna.

Menjelaskan Alur Pendaftaran

Alur pendaftaran dan logikanya cukup sederhana dan mudah dipahami.

Pertama, buka  resources/views/auth/register.blade.php  untuk melihat konten formulir pendaftaran yang dikembangkan dan ditata dengan Tailwind CSS, Anda dapat menyesuaikannya atau menambahkan lebih banyak kolom input agar sesuai dengan desain Anda.

Saat tombol kirim diklik, permintaan dikirim dari file rute/auth.php  register ke metode penyimpanan dari file RegisteredUserController.php baru di ../Controllers/Authfolder.

Metode penyimpanan memvalidasi input pengguna dan membuat pengguna baru berdasarkan informasi yang diberikan.

Anda dapat menyesuaikan kode untuk mengakomodasi bidang masukan khusus Anda.

/**
     * Handle an incoming registration request.
     *
     * @param  \Illuminate\Http\Request  $request
     * @return \Illuminate\Http\RedirectResponse
     *
     * @throws \Illuminate\Validation\ValidationException
     */
    public function store(Request $request)
    {
        $request->validate([
            'name' => 'required|string|max:255',
            'email' => 'required|string|email|max:255|unique:users',
            'password' => 'required|string|confirmed|min:8',
        ]);
        Auth::login($user = User::create([
            'name' => $request->name,
            'email' => $request->email,
            'password' => Hash::make($request->password),
        ]));
       event(new Registered($user));
       return redirect(RouteServiceProvider::HOME);
    }

Anda dapat menyesuaikan kode untuk mengakomodasi bidang masukan khusus Anda.

Menjelaskan Alur Reset Password

Logika setel ulang kata sandi sama seperti sebelumnya, tetapi sedikit perbedaannya adalah email setel ulang kata sandi dikirim dari ../Controllers/Auth/PasswordResetLinkController.php di bawah metode penyimpanan.

public function store(Request $request)
    {
        $request->validate([
            'email' => 'required|email',
        ]);
        $status = Password::sendResetLink(
            $request->only('email')
        );
        return $status == Password::RESET_LINK_SENT
                    ? back()->with('status', __($status))
                    : back()->withInput($request->only('email'))
                            ->withErrors(['email' => __($status)]);
    }

Selanjutnya, ketika pengguna mengklik tautan dari email mereka, Laravel menunjukkan formulir untuk mengisi kata sandi baru, saat mengirimkan, permintaan dikirim ke metode penyimpanan di bawah NewPasswordController.php tempat penanganannya.

Anda dapat melihat bagaimana Laravel menangani logika.

Menjelaskan Alur Verifikasi Email

Menangani verifikasi Email dengan Laravel sangat elegan; setelah tombol Kirim atau Kirim ulang verifikasi email diklik, Laravel memanggil storemethod di EmailVerificationNotificationController.php untuk mengirimkan tautan verifikasi.

Saat tautan diklik, Laravel mengirimkan permintaan ke VerifyEmailController.php dan memanggil metode  __invokemagic  untuk melakukan verifikasi.

Menjelaskan Alur Konfirmasi Password

Laravel Breeze memperkenalkan fitur otentikasi baru yang disebut Konfirmasi Kata Sandi.

Dengan fitur baru ini, Anda dapat mengizinkan pengguna untuk mengonfirmasi kata sandi mereka sebelum melakukan tindakan berbahaya seperti menghapus akun mereka, menarik diri dari dompet, dll.

Mari jelajahi aliran logika:

Formulir konfirmasi kata sandi dibuat di bawah resources/views/auth/confirm-password.blade.php untuk input kata sandi Anda.

Permintaan dikirim ke metode penyimpanan di bawah ../Controllers/Auth/ConfirmablePasswordController.php tempat logika ditulis.

Itu dia, langkah-langkah Laravel Breeze, pengontrol, rute, dan tampilan yang baru dibuat, dan di mana menemukan logika apa pun selama proses otentikasi.

Kesimpulan

Sejauh ini, kami telah menjelajahi Laravel Breeze dan menjelaskan alur autentikasi yang berbeda dan di mana menemukan logika yang berbeda.

Fitur autentikasi yang baru diperkenalkan adalah fitur penting untuk melindungi area aman atau tindakan terbatas.

OOKINFO

Jasa pembuatan Aplikasi Mobile dan Web. Siap memberikan solusi digital untuk bisnis anda. Tugas Kuliah, Organisasi, Perusahaan, E-Commerce.