URL'lerimde matris veya sorgu parametreleri kullanıp kullanmayacağımı merak ediyorum. Bu konuyla ilgili eski bir tartışmayı tatmin edici bulmadım.
Örnekler
- Sorgu parametreleri içeren URL: http: //some.where/thing? ParamA = 1 & paramB = 6542
- Matris parametreleri olan URL: http: //some.where/thing; paramA = 1; paramB = 6542
İlk bakışta matris parametrelerinin sadece avantajları var gibi görünüyor:
- daha okunabilir
- XML belgelerinde "&" kodlaması ve kod çözmesi gerekmez
- "?" birçok durumda önbelleğe alınmaz; Matris parametreleri olan URL'ler önbelleğe alınır
- matris parametreleri yolun her yerinde görünebilir ve sonu ile sınırlı değildir
- matris parametreleri birden fazla değere sahip olabilir:
paramA=val1,val2
Ancak dezavantajlar da vardır:
- JAX-RS gibi sadece birkaç çerçeve matris parametrelerini destekler
- Bir tarayıcı GET aracılığıyla bir form gönderdiğinde, parametreler sorgu parametreleri haline gelir. Böylece aynı görev için iki tür parametre ile sonuçlanır. REST hizmetlerinin kullanıcılarının kafasını karıştırmamak ve hizmet geliştiricileri için gösterilen çabayı sınırlamak için, bu alanda her zaman sorgu parametrelerini kullanmak daha kolay olacaktır.
Hizmetin geliştiricisi matris param desteğine sahip bir çerçeve seçebildiğinden, geriye kalan tek dezavantaj, tarayıcıların varsayılan sorgu parametreleriyle oluşturmasıdır.
Başka dezavantajları var mı? Sen ne yapardın?