Belajar Laravel (Chapter 3 | Tutorial Routing)

Tobi Ahmad
dotlocal
Published in
2 min readApr 4, 2020

Route merupakan kumpulan alamat yang tersedia pada project Laravel, ketika ada request yang masuk pada project laravel, routes akan mengenali apakah url yang diakses terdaftar pada route atau tidak, jika url tidak ada akan di redirect ke halaman 404.

Scope of This Chapter

Memahami berbagai perintah router di Laravel serta penggunaan dengan controller.

Basic Routing

Contoh penggunaan route yang paling mendasar adalah sebagai berikut :

Route::get('test', function () {
return 'Test';
});

Pada Laravel 7.x routing terbagi menjadi 4 file yang terdapat di folder routes:

routes/web.php

routes/web.php adalah file routing yang digunakan untuk pada tampilan web, route ini masuk dalam group middleware web yang memiliki fitur session dan CSRF protection. Contohnya jika kita ingin membuat route yang akan diarahkan ke url http://laravel.local/user di browser, maka penulisan routenya seperti:

Edit file routes/web.php, lalu tambahkan kode berikut ini:

Route::get('/user', 'UserController@index');

routes/api.php

routes/api.php adalah file routing yang digunakan untuk pembuatan Rest API, route ini masuk dalah group middleware api yang tidak memiliki fitur session, bisa menggunakan basic auth atau JWT. Contohnya jika kita ingin membuat route yang akan diarahkan ke url http://laravel.local/api/user. maka penulisan routenya seperti:

Edit file routes/api.php, lalu tambahkan kode berikut ini:

Route::get('/user', function(Request $request) {
return $request->user();
});

kita tidak perlu menuliskan /api/user pada routes/api.php. Karena semua route yang terdapat pada api.php masuk dalam group dengan awalan url /api/

routes/console.php

route yang berjalan di Artisan Console atau command terminal. contohnya

php artisan inspire

routes/channels.php

route yang digunakan untuk membuat broadcast channel, implementasinya jika kita ingin menggunakan WebSockets untuk realtime, live updating tampilan web.

Selain 4 file diatas kita juga bisa menambah file routing, seperti route khusus untuk admin routes/admin.php kemudian kita daftarkan file tersebut ke app/Providers/RouteServiceProvider.php.

Router Methods

Pada route Laravel kita bisa menggunakan beberapa jenis HTTP method, kita bahas yang paling sering digunakan.

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback); (saya belum pernah pakai)
Route::delete($uri, $callback);
Route::options($uri, $callback);

GET

Method yang digunakan mengakses data dari server, seperti contoh mengakses url dari browser atau untuk mengakses data pada API, untuk contoh penulisannya:

Route::get($uri, $callback);

POST

Method yang digunakan untuk create atau tambah data ke server/database, contoh penulisannya:

Route::post($uri, $callback);

PUT

Method ini digunakan untuk mengupdate data yang sudah ada pada server/database. Data yang ada di form tidak terlihat pada UR, contoh penulisannya:

Route::put($uri, $callback);

PATCH

Kegunaannya hampir sama dengan method PUT

Route::patch($uri, $callback);

DELETE

Method delete digunakan untuk menghapus data pada server/database.

Route::delete($uri, $callback);

Jika kita ingin menggunakan route dengan multiple HTTP method bisa menggunakan match method.

Route::match([‘get’, ‘post’], ‘/user’, ‘UserController@index’);

Jika ingin route bisa merespon semua HTTP method menggunakan any method.

Route::any(‘/user’, ‘UserController@index’);

Next Chapter

https://medium.com/dotlocal/belajar-laravel-chapter-4-kupas-tuntas-controllers-ca47fe0154fa

Support the Author

Jika ada yang mau saran dan support saya untuk menulis, bisa hubungi saya di email tobidsn@gmail.com

Cheers
Tobi Ahmad
Founder of Dot Local

--

--

Tobi Ahmad
dotlocal

Web Developer, Blogger, & Open source enthusiast.