Genellikle, kullanıcıya çok fazla maruz bırakmamalıdır. Bir dizin yapısı bazı şeyler için değil, her şey için mantıklı. Tipik var1-name/var1-value/var2-name/var2-value/ formatı değişken isimlerini teşhir edilir ve kolayca en amaçlar için önlenebilir.
Eğer sayfalandırılan parçacığı ile bir forum bir site var söylüyorlar. Bunu bu gibi URL'leri kullanabilirsiniz yapabilir: forum/<forum-id>/<thread-id>/<page-num>#post-<post-id>. Bu yaklaşım ile tek sorun dizinleri (forum yanı sayfalandırıldığından örneğin eğer nasıl yukarıdaki temsil ediyorsun?) Belirsiz olmasıdır.
StackOverflow sizin gibi URL'ler vererek "sahte insan okunabilir" yaklaşımı şu questions/<question-id>/<pseudo-slug> burada pseudo-slug aslında benzersiz bir tanımlayıcı değil, istediğiniz herhangi rastgele bir dize olabilir.
Sık sık oluşturulan URL'ler kısa (ve böylece daha kolay hatırlarsınız) yapmak için bazı argümanlar için mantıklı varsayılan sağlayabilir. Zaten bu yaparsanız, aslında, yani aslında what Bu kullanıcıya görüntülenen sadece nasıl görüntülenir ziyade edilir etkilemez bir dizin yapısı içinde argüman koymak için mantıklı olmadığını düşünmelisiniz? Farklı sunum ile aynı içeriği ise, bu (SEO kurallar genellikle içerik çoğaltılamaz kaçınmak gerektiğini vurgulamak sadece iyi eski CGI değişkenleri argümanlar koymak ve esasen çoğaltılamaz içeriği ile ayrı dizin yapıları önlemek için bir anlamsal düzeyde daha mantıklı olabilir - hakkında en), örneğin yapar.
"Kök" dizin yapısı gelince: /<controller>/<view>/ ya da /<model>/<view>/, bazı çerçeveler için ortak varsayılan, ama yine iç yapısını ortaya koyar. StackOverflow /questions/show/<question-id>/ kullanabilirsiniz, ama daha ağız ve "fiil" (yani show) zaten HTTP yöntemi ima mi (GET). Ben böyle bir yapı /<collection>/<item-id>/ sadece daha dinlendirici, ama aynı zamanda kolay hatırlamak için olduğunu bulmak.
Eğer geleneksel CRUD içine sığmayan "yöntemleri" eklemek istiyorsanız (örneğin, ayrıntılı olarak gösterilecek bu öğenin "özelliklerini" belirterek), kolayca /<collection>/<item-id>/<property>/ bu uzatabilirsiniz ve sayısal varsa kimlikleri veya özel anahtar umursamıyorum, siz de (I sözleşmeler için gördüm collection-attribute tüm koleksiyon veya bir etkileşim yöntemi bir özelliği olabilir ya /<collection>/<collection-attribute>/ gibi özel durumlar ekleyebilirsiniz özel anahtar kelime new aracılığı GET yeni bir madde oluşturmak için bir şeklidir sığınakta yapıları).
Sen URL'ler üzerinden görüşlerini açığa işlemini otomatik olarak yapabilirsiniz, ancak oluşturmak URL'leri düzgün ve tutarlı olacak ise, onlar oldukça veya hatırlamak için kolay olmayacaktır. Amazon akla görünmüyor, ama yine URL'leri daha tanınabilir yapmak ve "gizem link" etkisini önlemek için iyi bir fikirdir.