0% menganggap dokumen ini bermanfaat (0 suara)
23 tayangan19 halaman

Pertemuan 7 - Validation and Authentication

Dokumen tersebut membahas tentang validasi dan otentikasi API RESTful menggunakan Laravel. Topik utama yang dibahas adalah validasi data masukan, penggunaan aturan validasi yang disediakan Laravel, dan otentikasi menggunakan Sanctum untuk melindungi route dengan token.

Diunggah oleh

Klanx RobG
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
23 tayangan19 halaman

Pertemuan 7 - Validation and Authentication

Dokumen tersebut membahas tentang validasi dan otentikasi API RESTful menggunakan Laravel. Topik utama yang dibahas adalah validasi data masukan, penggunaan aturan validasi yang disediakan Laravel, dan otentikasi menggunakan Sanctum untuk melindungi route dengan token.

Diunggah oleh

Klanx RobG
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 19

Validation and Authentication

RESTful API
Refactor

● Index:
○ Menghandle jika data kosong
● Store:
○ Menghandle jika salah satu data tidak dikirim ketika menambahkan data
● Update
○ Menghandle jika resource yang diminta tidak ada
○ Menghandle jika salah satu data tidak dikirim ketika meng-update data
● Delete
○ Menghandle jika resource yang diminta tidak ada
● Add authentication (sanctum)
○ Protect routes
Validation
Validation

● Validation digunakan untuk memvalidasi data yang masuk


● data form atau data input (json)
● Laravel menyediakan beberapa pendekatan untuk validation
○ Otomatis: Menggunakan method validate
○ Manual: Menggunakan Class Validator (Facades)
● Laravel menyediakan banyak rules yang dapat diterapkan untuk validasi
Rules

Rules Definition Value

required field wajib diisi dan tidak boleh kosong -

string field harus berupa string Edo Riansyah

numeric field harus berupa angka (numeric) 08123456789

email field harus berupa alamat email yang valid [email protected]

min:value dan max:value field harus memiliki nilai minimum atau -


maximum
Authentication
Sanctum
Authentication

● Proses untuk mengautentikasi atau mengenali user yang sah


● Proses autentikasi:
○ Web: username dan password
○ API: token
● Token dihasilkan dari proses login atau register
● Authentication di laravel:
○ Laravel Passport: Menggunakan OAuth2
○ Laravel Sanctum: Menggunakan API Token (Simple)
Sanctum - Installation

Sanctum telah terpasang secara default di Laravel 9/10.

- Install Package Sanctum: composer require laravel/sanctum


- Publish Package Sanctum:
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
- Menjalankan migration: php artisan migrate

Laravel akan membuat table personal_access_tokens untuk menyimpan token.


Cara Kerja Token

- Token dihasilkan ketika user melakukan register atau login


- Membuat fitur register dan login untuk mendaftarkan user
- Token dikembalikan setelah login dalam bentuk JSON
Membuat Fitur Auth: Register dan Login

- Membuat fitur register untuk mendaftarkan user


- Membuat fitur login untuk menghasilkan Token (JSON)
Sanctum - Protecting Routes

Kita dapat melindungi endpoint menggunakan authentication dengan mengirimkan token yang sudah
didapatkan dari login

- Melindungi endpoint dengan mengirimkan authentication sanctum ke route


- Authentication ditambahkan melalui middleware di route

Setiap melakukan request harus melakukan authentication dengan mengirimkan token.


Referensi

● Laravel: Routing
● Laravel: Controllers
● Laravel: Requests
● Laravel: Database
● Laravel: Migrations
● Laravel: Eloquent
Presensi Pertemuan 7

3SE01 (A109) : Klik disini

3SE02 (A110) : Klik disini

3SE03 (A112 & A113) : Klik disini

Anda mungkin juga menyukai