Yanıtlar:
Kaynak , RESTful bir Endpoint alt kümesidir .
Bir uç nokta kendi başına bir servis ulaşılabilir konumdur:
https://www.google.com # Serves HTML
8.8.8.8 # Serves DNS
/services/service.asmx # Serves an ASP.NET Web Service
Bir kaynak , ad boşlukları ile temsil edilen bir veya daha fazla ismin sunulduğu anlamına gelir, çünkü insanların kavraması kolaydır:
/api/users/johnny # Look up johnny from a users collection.
/v2/books/1234 # Get book with ID 1234 in API v2 schema.
Yukarıdakilerin tümü hizmet son noktaları olarak düşünülebilir, ancak RESTLY konuşarak sadece alt grup kaynaklar olarak kabul edilir. Üst grup, sağladığı içerik konusunda etkileyici değildir.
Bir REST isteği adlardan (kaynaklardan) ve fiillerden (HTTP yöntemleri) oluşan bir cümle gibidir :
GET
(yöntem) adlı kullanıcı johnny
(kaynak).DELETE
(yöntem) kimliğine sahip kitap 1234
(kaynak).Uç nokta genellikle bir hizmete karşılık gelir, ancak kaynak birçok şey anlamına gelebilir. Aşağıda, kullanıldıkları bağlama bağlı olan bazı kaynak örnekleri verilmiştir.
Size yardımcı olmak için kullanılabilecek bir şey:
Kütüphane değerli bir kaynaktı ve sık sık onu kullandı.
Kaynaklar, yaşamı desteklemede değerli olan su ve ahşap gibi doğal maddelerdir:
Dünyanın sınırlı kaynakları vardır ve bunları geri dönüştürmezsek onları kullanırız.
Kaynaklar ayrıca ihtiyaç duyduğunuzda kullanabileceğiniz para veya mülkler gibi değerli şeylerdir:
Hükümet, ihtiyaç duyulan öğretmen sayısını işe alacak kaynaklara sahip değil.
Vadeli kaynak tanımı gereği nüans bir yeri vardır. Her şey bağlıdır bağlamda onun kullanılan.
Kaynak ve bitiş noktası terimleri genellikle eşanlamlı olarak kullanılır. Ama aslında aynı anlama gelmiyorlar.
Bitiş noktası terimi , istekte bulunmak için kullanılan URL'ye odaklanır .
Vadeli kaynak odaklanmıştır veri setinin bir istek tarafından döndürülür.
Şimdi, aynı kaynağa genellikle birden fazla farklı uç noktadan erişilebilir .
Ayrıca aynı bitiş noktası , bir sorgu dizesine bağlı olarak farklı kaynaklar döndürebilir .
Bazı örnekleri görelim:
Aşağıdaki farklı uç nokta örneklerine bir göz atın :
/api/companies/5/employees/3
/api/v2/companies/5/employees/3
/api/employees/3
Belli bir API'da aynı kaynağa erişebilecekleri açıktır .
Ayrıca mevcut bir API tamamen değiştirilebilir. Bu, tamamen yeni ve farklı URL'ler kullanarak aynı eski kaynaklara erişebilecek yeni uç noktalara yol açabilir:
/api/employees/3
/new_api/staff/3
Uç noktanız bir koleksiyon döndürürse, sorgu dizelerini kullanarak arama / filtreleme / sıralama uygulayabilirsiniz. Sonuç olarak, aşağıdaki URL'lerin tümü aynı bitiş noktasını ( /api/companies
) kullanır, ancak farklı kaynaklar (veya tanımları kendi başlarına kaynak olan kaynak koleksiyonları) döndürebilirler :
/api/companies
/api/companies?sort=name_asc
/api/companies?location=germany
/api/companies?search=siemens
Muhtemelen benimki büyük bir cevap değil ama işte gidiyor.
HTTP üzerinden gerçekten RESTful web hizmetleriyle daha fazla çalıştığımdan beri, net bir tanımı olmadığı için insanları uç nokta terimini kullanmaktan uzak tutmaya çalıştım ve bunun yerine kaynaklar ve kaynak konumları olan REST dilini kullandım.
Bana göre uç nokta bir TCP terimidir. URL'nin bir kısmı bir dinleme sunucusunu tanımladığından HTTP ile sınırlıdır.
Bu yüzden kaynak daha yeni bir terim değil, sanırım, son nokta her zaman kötüye kullanıldı ve başımızı REST'in etrafında bir API stili olarak alırken bunu fark ediyoruz .
Düzenle
Bu konuda blog yazdım.
https://medium.com/@lukepuplett/stop-saying-endpoints-92c19e33e819
Göre https://apiblueprint.org/documentation/examples/13-named-endpoints.html bir olan kaynak bir halbuki, örneğin / müşteriler / 30654 / emir - Verilen varlığın depolama "genel" yer uç nokta beton eylemdir (HTTP Yöntemi) 'ni seçin. Yani bir kaynağın birden fazla uç noktası olabilir.
Kullanıcıların, görevlerin ve ödül puanlarının bilgisine sahip bir sunucu düşünün.
Kaynak: API Uç Noktaları ve Kaynaklar
1. Kaynak açıklaması “Kaynaklar”, bir API tarafından döndürülen bilgileri ifade eder.
2. Bitiş noktaları ve yöntemler Bitiş noktaları kaynağa nasıl eriştiğinizi gösterirken, yöntem kaynakla izin verilen etkileşimleri (GET, POST veya DELETE gibi) gösterir.
Ek bilgi: 3. Parametreler Parametreler, yanıtı etkilemek için bitiş noktasıyla (yanıt biçimini veya döndürülen miktarı belirtmek gibi) geçirebileceğiniz seçeneklerdir.
4. İstek örneği İstek örneği, yapılandırılmış bazı parametreleri gösteren uç noktayı kullanan örnek bir istek içerir.
5. Yanıt örneği ve şeması Yanıt örneği , istek örneğinden alınan bir örnek yanıtı gösterir; Yanıt şeması, yanıttaki tüm olası öğeleri tanımlar.
Kaynak- Referans bağlantısı