Resource URI हे एखाद्या क्रियेसारखे नव्हे तर एका वस्तूकडे जाणाऱ्या noun-आधारित path सारखे वाचले पाहिजे. HTTP method आधीच verb पुरवते, म्हणून URI ला फक्त resource स्पष्ट आणि सुसंगतपणे ओळखणे आवश्यक असते.
Resource URI हे एखाद्या क्रियेसारखे नव्हे तर एका वस्तूकडे जाणाऱ्या noun-आधारित path सारखे वाचले पाहिजे. HTTP method आधीच verb पुरवते, म्हणून URI ला फक्त resource स्पष्ट आणि सुसंगतपणे ओळखणे आवश्यक असते.
GET /users/42 — GET /getUser?id=42 नव्हे. Method (GET) हेच verb आहे./users ही collection; /users/42 एक सदस्य. सर्वत्र अनेकवचन ठेवल्याने ते अंदाज लावता येण्याजोगे राहते./users/42/orders = "user 42 चे orders".kebab-case, lowercase वापरा. /blog-posts, /blogPosts किंवा /Blog_Posts नव्हे./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
एक-दोन पातळ्यांपलीकडे खोल nesting टाळा — /users/42/orders/1001/items/5/reviews ठिसूळ होते. एकदा order ला स्वतःचा ID मिळाला की /orders/1001 ला प्राधान्य द्या. CRUD मध्ये न बसणाऱ्या क्रियांसाठी (उदा. "send email"), controller-style sub-resource स्वीकार्य आहे: POST /users/42/verify-email.
सुसंगत naming हेच API ला अंतर्ज्ञानी वाटायला लावते — /users आणि /users/42 पाहिलेला developer docs न वाचता /products आणि /products/99 अचूक अंदाजू शकतो. Interviewers हे मोजण्यासाठी वापरतात की तुम्ही RPC calls (/doThisThing) ऐवजी resources मध्ये (REST मानसिकता) विचार करता का. सर्वात सामान्य anti-patterns — path मध्ये verbs, विसंगत अनेकवचन, आणि खोल nested URLs — सर्व API शिकायला आणि सांभाळायला कठीण करतात, आणि ते असा developer दर्शवतात ज्याने REST चा uniform-interface constraint आत्मसात केलेला नाही. चांगली URI रचना concerns वेगळे ठेवते: path मध्ये identity, query string मध्ये filtering आणि pagination, ज्याने caching आणि routing स्वच्छ राहतात.
सविस्तर उत्तरांसह IT मुलाखत प्रश्नांचे ग्रंथालय — Junior पासून Senior पर्यंत.
देणगी द्या