Saya telah mendengar "sumber daya" dan "titik akhir" untuk merujuk pada hal yang sama. Tampaknya sumber daya adalah istilah yang lebih baru.
Apa perbedaan di antara mereka? Apakah "sumber daya" menyiratkan desain RESTful?
Sumberdaya adalah subset RESTful dari Endpoint .
Sebuah endpoint dengan sendirinya adalah lokasi di mana layanan dapat diakses:
https://www.google.com # Serves HTML
8.8.8.8 # Serves DNS
/services/service.asmx # Serves an ASP.NET Web Service
Sebuah sumber daya mengacu pada satu atau lebih kata benda dilayani, diwakili dalam mode namespaced, karena mudah bagi manusia untuk memahami:
/api/users/johnny # Look up johnny from a users collection.
/v2/books/1234 # Get book with ID 1234 in API v2 schema.
Semua hal di atas dapat dianggap sebagai titik akhir layanan, tetapi hanya grup terbawah yang akan dianggap sebagai sumber daya, yang dengan tenang. Grup teratas tidak ekspresif mengenai konten yang disediakannya.
Permintaan REST seperti kalimat yang terdiri dari kata benda (sumber daya) dan kata kerja (metode HTTP):
GET
(metode) nama pengguna johnny
(sumber daya).DELETE
(metode) buku dengan id 1234
(sumber daya).Endpoint biasanya mengacu pada layanan, tetapi sumber daya dapat berarti banyak hal. Berikut adalah beberapa contoh sumber daya yang bergantung pada konteks tempat mereka digunakan.
Sesuatu yang dapat digunakan untuk membantu Anda:
Perpustakaan adalah sumber daya yang berharga, dan ia sering memanfaatkannya.
Sumber daya adalah zat alami seperti air dan kayu yang berharga dalam mendukung kehidupan:
[pl] Bumi memiliki sumber daya yang terbatas, dan jika kita tidak mendaur ulangnya, kita menggunakannya.
Sumber daya juga merupakan hal yang bernilai seperti uang atau barang yang dapat Anda gunakan saat Anda membutuhkannya:
[pl] Pemerintah tidak memiliki sumber daya untuk merekrut jumlah guru yang dibutuhkan.
Sumber daya istilah dengan definisi memiliki banyak nuansa. Itu semua tergantung pada konteks yang digunakan di.
Sumber daya istilah dan titik akhir sering digunakan secara sinonim. Namun sebenarnya mereka tidak bermaksud hal yang sama.
Istilah titik akhir difokuskan pada URL yang digunakan untuk membuat permintaan.
Sumber daya istilah difokuskan pada kumpulan data yang dikembalikan oleh permintaan.
Sekarang, sumber daya yang sama sering dapat diakses oleh beberapa titik akhir yang berbeda .
Juga titik akhir yang sama dapat mengembalikan sumber daya yang berbeda , tergantung pada string kueri.
Mari kita lihat beberapa contoh:
Titik akhir yang berbeda mengakses sumber daya yang sama
Lihat contoh-contoh titik akhir yang berbeda berikut :
Mereka jelas bisa mengakses sumber daya yang sama di API yang diberikan.
Juga API yang ada dapat diubah sepenuhnya. Ini dapat mengarah ke titik akhir baru yang akan mengakses sumber daya lama yang sama menggunakan URL yang sama sekali baru dan berbeda:
Satu titik akhir mengakses sumber daya yang berbeda
Jika titik akhir Anda mengembalikan koleksi, Anda bisa menerapkan pencarian / pemfilteran / penyortiran menggunakan string kueri. Sebagai hasilnya, URL berikut semuanya menggunakan titik akhir yang sama (
/api/companies
), tetapi mereka dapat mengembalikan sumber daya yang berbeda (atau koleksi sumber daya , yang menurut definisi adalah sumber daya itu sendiri):sumber
Mungkin jawaban saya bukan jawaban yang bagus tapi ini dia.
Karena bekerja lebih banyak dengan layanan web yang benar-benar tenang melalui HTTP, saya telah mencoba untuk menjauhkan orang dari menggunakan istilah titik akhir karena tidak memiliki definisi yang jelas, dan alih-alih menggunakan bahasa REST yang merupakan sumber daya dan lokasi sumber daya.
Menurut saya, endpoint adalah istilah TCP. Itu digabungkan dengan HTTP karena bagian dari URL mengidentifikasi server mendengarkan.
Jadi sumber daya bukanlah istilah yang lebih baru, saya tidak berpikir, saya pikir titik akhir selalu disalahgunakan dan kami menyadari bahwa saat kami mengarahkan REST sebagai gaya API.
Edit
Saya membuat blog tentang ini.
https://medium.com/@lukepuplett/stop-saying-endpoints-92c19e33e819
sumber
Menurut https://apiblueprint.org/documentation/examples/13-named-endpoints.html adalah sumber daya tempat penyimpanan "umum" dari entitas yang diberikan - misalnya / pelanggan / 30654 / pesanan, sedangkan titik akhir adalah tindakan nyata (Metode HTTP) di atas sumber daya yang diberikan. Jadi satu sumber daya dapat memiliki banyak titik akhir.
sumber
Pertimbangkan server yang memiliki informasi pengguna, misi, dan poin hadiah mereka.
Sumber: Titik Akhir API vs Sumber Daya
sumber
1. Deskripsi sumber daya “Sumberdaya” mengacu pada informasi yang dikembalikan oleh API.
2. Titik akhir dan metode Titik akhir menunjukkan bagaimana Anda mengakses sumber daya, sementara metode menunjukkan interaksi yang diizinkan (seperti GET, POST, atau HAPUS) dengan sumber daya.
Info tambahan: 3. Parameter Parameter adalah opsi yang dapat Anda berikan dengan titik akhir (seperti menentukan format respons atau jumlah yang dikembalikan) untuk memengaruhi respons.
4. Contoh permintaan Contoh permintaan termasuk permintaan sampel menggunakan titik akhir, menunjukkan beberapa parameter yang dikonfigurasi.
5. Contoh dan skema respons Contoh respons menunjukkan contoh sampel dari contoh permintaan; skema respons mendefinisikan semua elemen yang mungkin dalam respons.
Sumber- Link Referensi
sumber