Pada materi kali ini kita akan membahas tentang Mengenal Apa Itu Versioning Pada API, Version API merupakan konsep yang kita gunakan untuk membuat versi pada API yang mana versioning tersebut berfungsi untuk mengelompokan resource (sumber daya) menjadi beberapa bagian sesuai dengan versi yang dibuat, konsep pada versioning ini sangat efektif dan efisien jika kita gunakan untuk jangka panjang dalam penggunaan dan perawatan resource API. Kerena pada saat terdapat perubahan pada resource yang sudah berjalan pada saat ini tanpa merubah script yang lama maka kita buatlah version yang baru dari versi yang sebelumnya yang sudah ada. Sehingga source dengan versi yang lama tidak mempengaruhi source versi yang terbaru.

Untuk membedakan URL Design (end-point) no-versioning dan versioning dapat kita lihat pada url yang digunakan, namun pada umumnya url design atau end-point standard tidak terdapat prefix versi pada urlnya yang menandakan bahwa resource api yang dibuat tersebut tidak menggunakan versioning, sedangkan url design atau end-point yang menggunakan versioning terdapat prefix dari versi tersebut yang menandakan bahwa resource api yang dibuat menggunakan konsep versioning, dibawah ini dapat kita lihat perbedaan antara ­end-point dengan menggunakan versioning dengan end-point tidak menggunakan versioning.

End-Point Standard (Non-Versioning)
http://localhost:8000/api/mahasiswa
End-Point (Versioning)
http://localhost:8000/api/v1/mahasiswa

Ket : dari contoh diatas dapat kita lihat perbedaan antara kedua endpoint tersebut yaitu pada endpoint versioning terdapat v1 yang menandakan versi dari endpoint yang di gunakan.

Untuk membuat API pada framework laravel kita memerlukan lapisan transformasi yang berbeda diantaranya yaitu model Eloquent dan response JSON yang nantinya akan mengembalikan data berupa JSON yang tidak sepenuhnya mengandalkan Model dan Controller dan untuk memberi kemudahan tersebut kita dapat memanfaatkan Eloquent API Resource yang terdiri dari 2 bagian yaitu resource dan resource collection, untuk perbedaan dari resource dan resource collection ini yaitu :

  • Resource berfungsi untuk meng-handle response data JSON tunggal sepeti menampilkan satu data record di table database.
  • Resource collection berfungsi untuk meng-handle response JSON multi seperti untuk menampilkan semua record data dari table database.

 Oke teman-teman itulah pembahasan kita tentang Mengenal Apa Itu Versioning Pada API.

Semoga bermanfaat.

Terima kasih

WhatsApp chat