📚

Pengenalan Swagger untuk API

Aug 20, 2024

Catatan Kuliah: Pengenalan Swagger

Agenda

  • Perkenalan dengan Swagger
  • Fungsi Swagger
  • Penggunaan Swagger dengan Express JS
  • Implementasi pada sebuah proyek

Apa itu Swagger?

  • Swagger adalah framework open source untuk mendesain, membangun, dan mendokumentasikan API.
  • API (Application Programming Interface) menghubungkan aplikasi satu dengan lainnya.
  • Swagger memfasilitasi pembuatan dokumentasi API yang mudah dibaca, diuji, dan diintegrasikan.
  • Untuk informasi lebih lanjut, kunjungi swagger.io.

Fungsi Swagger

  • Mendesain, membangun, dan mendokumentasikan API secara terstruktur.
  • Membuat dokumentasi API interaktif.
  • Menghasilkan kode server dan klien untuk berbagai bahasa.
  • Menghubungkan alat-alat terkait API seperti pengujian otomatis dan validasi.

Komponen Swagger

  • Swagger Editor: Untuk mendesain API.
  • Swagger Codegen: Untuk menghasilkan kode dari spesifikasi API.
  • Swagger UI: Untuk menampilkan dokumentasi API dalam bentuk yang interaktif.

Instalasi Swagger dengan Express JS

  1. Instalasi package yang dibutuhkan:

    • swagger-ui-express
    • swagger-jsdoc
    • express
    • nodemon (sebagai development dependency)
  2. Inisialisasi proyek menggunakan yarn:

    yarn init -y
  3. Install dependencies:

    yarn add swagger-ui-express swagger-jsdoc express nodemon
  4. Inisialisasi eslint untuk deteksi error:

    npx eslint --init

    Pilihan konfigurasi dapat disesuaikan dengan kebutuhan.

Struktur Proyek

  1. Buat folder dan file:

    • src/index.js: File utama aplikasi.
    • src/user.js: File untuk mendefinisikan data pengguna.
  2. Definisikan API di index.js:

    • Import Express dan Swagger.
    • Definisikan endpoint menggunakan Express.
    • Tambahkan Swagger middleware untuk mendokumentasikan API.

Contoh Endpoint

  • GET /users: Mengambil semua pengguna.
  • GET /users/:id: Mengambil pengguna berdasarkan ID.
  • POST /users: Menambahkan pengguna baru.
  • PUT /users/:id: Memperbarui informasi pengguna berdasarkan ID.
  • DELETE /users/:id: Menghapus pengguna berdasarkan ID.

Swagger Documentation

  • Mendefinisikan informasi dasar API seperti judul, versi, dan deskripsi.
  • Menambahkan skema input/output untuk setiap endpoint.
  • Uji coba API menggunakan Swagger UI untuk melihat respon.

Kesimpulan

  • Implementasi Swagger dalam proyek Express JS memudahkan dalam mendokumentasikan dan menguji API.
  • Pastikan untuk memahami setiap endpoint dan cara kerjanya.
  • Untuk file latihan, silakan cek di deskripsi video.

Sampai jumpa di video selanjutnya! Jangan lupa subscribe dan nyalakan loncengnya.