Belajar Laravel : Membuat Verifikasi Email dengan Singkat

Belajar Laravel : Membuat Verifikasi Email dengan Singkat

Assalamualaikum,

Kita lanjutkan untuk fitur tambahan dari autentikasi yaitu kita akan tambahkan verifikasi email, untuk bagian ini kita wajib menggunakan Laravel paling baru yaitu Laravel 5.7, karena yang akan kita bahas adalah salah satu fitur baru dari Laravel 5.7 itu sendiri, jadi untuk versi dibawahnya tidak akan bisa menggunakan fitur ini.

Pada Laravel 5.7 dikenalkan opsi baru untuk verifikasi email user yang mendaftar pada website kita dari auth scaffolding untuk mengakomodasi hal tersebut sebuah kolom baru untuk tabel users pada migration awal Laravel ditambahkan, nama kolomnya adalah email_verified_at.

Untuk membuat pengguna yang baru saja mendaftar harus melakukan verifikasi emailnya kita perlu mengimplementasikan interface MustVerifyEmail pada model User.

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;

class User extends Authenticatable implements MustVerifyEmail
{
    // ...
}

Setelah kita mengimplementasikan kode seperti diatas, maka untuk setiap pengguna baru yang mendaftar ke website kita akan mendapatkan email yang berisi link untuk melakukan verifikasi, ketika diklik Laravel dengan otomatis akan mencatatnya ke database dan mengalihkan ke halaman yang sudah kita tentukan.

Selain itu, sebuah middleware baru juga ditambahkan pada HTTP  Kernel bawaan, nama middelwarenya adalah verified yang berfungsi untuk membatasi route hanya boleh diakses oleh pengguna yang sudah terverifikasi.

'verified' => \Illuminate\Auth\Middleware\EnsureEmailIsVerified::class,

Cukup sederhana kan untuk membuat verifikasi email menggunakan Laravel 5,7 ini? semoga bermanfaat untuk kita semua.

Wassalamualaikum.