Bu konunun bir "boyutu" hariç tutulmuştur, ancak bu çok önemlidir: "en iyi uygulamaların" REST yetenekleri ile uyguladığımız veya artırdığımız plaform ile anlaşması gereken zamanlar vardır.
Pratik örnek:
Günümüzde birçok web uygulaması MVC (Model, View, Controller) mimarisini uygulamaktadır. Belirli bir standart yolun sağlandığını varsayarlar, bu web uygulamaları bir "SEO URL'lerini Etkinleştir" seçeneği ile geldiğinde daha da fazladır.
Oldukça ünlü bir web uygulamasından bahsetmek için: OpenCart e-ticaret mağazası. Yönetici "SEO URL'lerini" etkinleştirdiğinde, söz konusu URL'lerin aşağıdaki gibi oldukça standart bir MVC biçiminde gelmesini bekler:
http://www.domain.tld/special-offers/list-all?limit=25
Nerede
special-offers
URL'yi işleyecek MVC denetleyicisidir (özel teklifler sayfasını gösterir)
list-all
denetleyicinin arayacağı eylem veya işlev adıdır. (*)
limit = 25, her sayfada 25 öğenin gösterileceğini belirten bir seçenektir.
(*) list-all
netlik için kullandığım kurgusal bir işlev adıdır. Gerçekte, OpenCart ve çoğu MVC çerçevesi index
, kullanıcı varsayılan bir eylemin gerçekleştirilmesini istediğinde çağrılan varsayılan, zımni (ve genellikle URL'de atlanır) işlevine sahiptir. Yani gerçek dünya URL'si:
http://www.domain.tld/special-offers?limit=25
Yukarıdakilere benzer şimdi oldukça standart bir uygulama veya frameworkd yapısı ile, genellikle bunun için optimize edilmiş, bunun için URL'leri yeniden yazan bir web sunucusu alırsınız (gerçek "SEOed olmayan URL":) olacaktır http://www.domain.tld/index.php?route=special-offers/list-all&limit=25
.
Bu nedenle, geliştirici olarak, sistem yöneticisi değilseniz, bir Apache / NGinx yeniden yazma yapılandırmasını (ikincisi kötü olabilir!) üzerinde.
Bu nedenle, REST API'niz, hem onunla tutarlılık hem de kolaylık / hız (ve dolayısıyla bütçe tasarrufu) için atıfta bulunulan web uygulamasının standartlarını izleyerek çok daha iyi olur.
Yukarıdaki pratik örneğe geri dönmek için, tutarlı bir REST API'si aşağıdaki URL'lere sahip bir şey olacaktır:
http://www.domain.tld/api/special-offers-list?from=15&limit=25
veya (SEO dışı URL'ler)
http://www.domain.tld/index.php?route=api/special-offers-list?from=15&limit=25
"oluşan yollar" argümanları ve "sorgu oluşturuldu" argümanlarının bir karışımı ile.