Bir resource URI'si bir eylem gibi değil, bir şeye giden isim tabanlı bir yol gibi okunmalıdır. HTTP method zaten fiili sağlar, bu yüzden URI'nin yalnızca resource'u açık ve tutarlı biçimde tanımlaması gerekir.
Bir resource URI'si bir eylem gibi değil, bir şeye giden isim tabanlı bir yol gibi okunmalıdır. HTTP method zaten fiili sağlar, bu yüzden URI'nin yalnızca resource'u açık ve tutarlı biçimde tanımlaması gerekir.
GET /users/42 — GET /getUser?id=42 değil. Method (GET) fiildir./users collection'dır; /users/42 bir üyedir. Her yerde çoğul kalmak onu öngörülebilir tutar./users/42/orders = "user 42'ye ait order'lar".kebab-case, küçük harf kullanın. /blog-posts, /blogPosts ya da /Blog_Posts değil./users?role=admin&sort=-created_at./users collection of users
/users/42 a single user
/users/42/orders orders belonging to user 42 (sub-collection)
/users/42/orders/1001 a specific order of that user
/orders/1001 same order, addressable at top level too
GET /users/42/orders?status=shipped&sort=-created_at&page=2 HTTP/1.1
Accept: application/json
Bir iki seviyeden derin iç içe geçmekten kaçının — /users/42/orders/1001/items/5/reviews kırılgan hâle gelir. Bir order'ın kendi ID'si olduğunda /orders/1001'i tercih edin. CRUD'a uymayan eylemler için (ör. "e-posta gönder"), controller tarzı bir alt resource kabul edilebilir: POST /users/42/verify-email.
Tutarlı adlandırma, bir API'yi sezgisel hissettiren şeydir — /users ve /users/42'yi gören bir geliştirici, dokümanları okumadan /products ve /products/99'u doğru tahmin edebilir. Mülakatçılar bunu, RPC çağrıları (/doThisThing) yerine resource'lar (REST zihniyeti) üzerinden düşünüp düşünmediğinizi ölçmek için kullanır. En yaygın anti-pattern'ler — path'te fiiller, tutarsız çoğullaştırma ve derin iç içe URL'ler — hepsi bir API'yi öğrenmeyi ve sürdürmeyi zorlaştırır ve REST'in uniform-interface kısıtını içselleştirmemiş bir geliştiriciye işaret eder. İyi URI tasarımı ayrıca meseleleri ayrı tutar: path'te kimlik, query string'de filtreleme ve sayfalama; bu da cache'lemeyi ve routing'i temiz tutar.
Junior'dan Senior'a detaylı cevaplarla bir BT mülakat soruları kütüphanesi.
Bağış Yap