Routing adalah salah satu fitur utama dalam Laravel yang berfungsi untuk menangani permintaan URL dan mengarahkan ke controller atau langsung mengembalikan response. Dengan memahami routing di Laravel, Anda dapat mengatur navigasi aplikasi dengan lebih baik dan efisien. Dalam artikel ini, kita akan membahas cara membuat route di Laravel, menangani request dan response, serta beberapa konsep penting lainnya.
1. Apa Itu Routing di Laravel?
Routing adalah mekanisme yang menghubungkan URL dengan aksi tertentu dalam aplikasi. Laravel menggunakan sistem routing berbasis file yang terletak di dalam folder routes/.
Beberapa file routing yang tersedia dalam Laravel:
-
web.php→ Untuk routing berbasis web (memiliki session dan CSRF protection) -
api.php→ Untuk API tanpa session dan CSRF -
console.php→ Untuk command-line (CLI) routing -
channels.php→ Untuk real-time event broadcasting
2. Membuat Route Dasar di Laravel
Untuk mendefinisikan route di Laravel, buka file routes/web.php dan tambahkan kode berikut:
use Illuminate\Support\Facades\Route;
Route::get('/halo', function () {
return "Halo, selamat datang di Laravel!";
});
Akses http://127.0.0.1:8000/halo di browser, dan Anda akan melihat pesan "Halo, selamat datang di Laravel!".
3. Jenis Route di Laravel
Laravel mendukung beberapa metode HTTP dalam routing, di antaranya:
-
Route::get('/url', function() {})→ Untuk mengambil data -
Route::post('/url', function() {})→ Untuk mengirim data -
Route::put('/url', function() {})→ Untuk memperbarui data -
Route::delete('/url', function() {})→ Untuk menghapus data
Contoh penggunaan route dengan berbagai metode HTTP:
Route::post('/submit', function () {
return "Data telah dikirim";
});
4. Routing dengan Controller
Untuk struktur yang lebih rapi, kita bisa mengarahkan route ke controller. Buat controller baru dengan perintah:
php artisan make:controller HaloController
Kemudian, edit file app/Http/Controllers/HaloController.php:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class HaloController extends Controller
{
public function index()
{
return "Halo dari Controller!";
}
}
Tambahkan routing di routes/web.php:
use App\Http\Controllers\HaloController;
Route::get('/halo', [HaloController::class, 'index']);
Sekarang, akses http://127.0.0.1:8000/halo untuk melihat hasilnya.
5. Routing dengan Parameter
Route dapat menerima parameter dinamis. Contohnya:
Route::get('/user/{id}', function ($id) {
return "User ID: " . $id;
});
Akses http://127.0.0.1:8000/user/5, dan Laravel akan menampilkan "User ID: 5".
6. Routing dengan Middleware
Middleware digunakan untuk memfilter request sebelum masuk ke controller. Contoh penggunaan middleware pada route:
Route::get('/dashboard', function () {
return "Ini adalah dashboard";
})->middleware('auth');
7. Redirect dan Named Route
Untuk melakukan redirect:
Route::redirect('/lama', '/baru');
Untuk named route:
Route::get('/profile', function () {
return view('profile');
})->name('profile');
Kesimpulan
Routing adalah bagian penting dalam Laravel yang mengatur navigasi aplikasi. Dengan memahami jenis route, penggunaan controller, parameter, middleware, dan named route, Anda dapat membangun aplikasi Laravel yang lebih terstruktur. Semoga artikel ini membantu Anda memahami dasar routing di Laravel! 🚀

Komentar
Posting Komentar