Membuat API dengan Laravel


Laravel adalah salah satu framework PHP yang terkenal karena kemudahannya dan fitur-fitur canggih. Dalam tutorial ini, kita akan membahas langkah-langkah untuk membuat API sederhana menggunakan Laravel.

Prasyarat

Sebelum kita mulai, pastikan Anda telah menginstal:

  • PHP (minimal versi 7.3)
  • Composer
  • Laravel (versi terbaru)

Langkah 1: Membuat Proyek Laravel

Pertama, kita perlu membuat proyek Laravel baru. Jalankan perintah berikut di terminal:

composer create-project --prefer-dist laravel/laravel laravel-api

Setelah proses selesai, masuk ke direktori proyek:

cd laravel-api

Langkah 2: Menyiapkan Database

  1. Buat database baru di MySQL (contoh: laravel_api).
  2. Konfigurasi koneksi database di file .env:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel_api
DB_USERNAME=root
DB_PASSWORD=

Langkah 3: Membuat Model dan Migrasi

Kita akan membuat model dan migrasi untuk sumber daya yang akan digunakan dalam API kita. Misalkan kita ingin membuat API untuk Artikel.

Jalankan perintah berikut untuk membuat model dan migrasi:

php artisan make:model Article -m

Selanjutnya, buka file migrasi yang baru dibuat di database/migrations/ dan tambahkan kolom yang dibutuhkan:

public function up()
{
    Schema::create('articles', function (Blueprint $table) {
        $table->id();
        $table->string('title');
        $table->text('content');
        $table->timestamps();
    });
}

Kemudian, jalankan migrasi:

php artisan migrate

Langkah 4: Membuat Controller

Sekarang, kita akan membuat controller untuk API. Jalankan perintah berikut:

php artisan make:controller Api/ArticleController --resource

Langkah 5: Menambahkan Logic ke Controller

Buka controller yang baru saja dibuat di app/Http/Controllers/Api/ArticleController.php dan tambahkan logic CRUD:

namespace App\Http\Controllers\Api;

use App\Http\Controllers\Controller;
use App\Models\Article;
use Illuminate\Http\Request;

class ArticleController extends Controller
{
    public function index()
    {
        return Article::all();
    }

    public function store(Request $request)
    {
        $article = Article::create($request->all());
        return response()->json($article, 201);
    }

    public function show($id)
    {
        return Article::find($id);
    }

    public function update(Request $request, $id)
    {
        $article = Article::find($id);
        $article->update($request->all());
        return response()->json($article, 200);
    }

    public function destroy($id)
    {
        Article::destroy($id);
        return response()->json(null, 204);
    }
}

Langkah 6: Menambahkan Routes

Buka file routes/api.php dan tambahkan route untuk API:

use App\Http\Controllers\Api\ArticleController;

Route::apiResource('articles', ArticleController::class);

Langkah 7: Menguji API

Kita dapat menggunakan Postman atau alat serupa untuk menguji API yang telah kita buat. Berikut beberapa endpoint yang bisa diuji:

  • GET /api/articles - Mendapatkan semua artikel
  • POST /api/articles - Membuat artikel baru
  • GET /api/articles/{id} - Mendapatkan artikel berdasarkan ID
  • PUT /api/articles/{id} - Memperbarui artikel berdasarkan ID
  • DELETE /api/articles/{id} - Menghapus artikel berdasarkan ID


Dalam tutorial ini, kita telah membahas langkah-langkah untuk membuat API sederhana menggunakan Laravel. Anda dapat mengembangkan dan menambahkan fitur lainnya sesuai kebutuhan.