एउटा resource URI कुनै action होइन, एउटा "थोक" तर्फको noun-आधारित path जस्तो पढिनुपर्छ। HTTP method ले verb पहिल्यै दिन्छ, त्यसैले URI ले resource लाई स्पष्ट र एकरूप रूपमा पहिचान मात्र गर्नुपर्छ।
एउटा resource URI कुनै action होइन, एउटा "थोक" तर्फको noun-आधारित path जस्तो पढिनुपर्छ। HTTP method ले verb पहिल्यै दिन्छ, त्यसैले URI ले resource लाई स्पष्ट र एकरूप रूपमा पहिचान मात्र गर्नुपर्छ।
GET /users/42 — GET /getUser?id=42 होइन। Method (GET) नै verb हो।/users collection हो; /users/42 एउटा सदस्य हो। सबैतिर bahuvachan राख्नाले यो अनुमानयोग्य रहन्छ।/users/42/orders = "user 42 का order हरू"।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 मा नमिल्ने action का लागि (जस्तै "send email"), controller-शैलीको sub-resource स्वीकार्य छ: POST /users/42/verify-email।
एकरूप नामकरणले एउटा API लाई सहज महसुस गराउँछ — /users र /users/42 देखेको developer ले doc नपढी /products र /products/99 सही अनुमान गर्न सक्छ। Interviewer हरूले यो तपाईं RPC call (/doThisThing) होइन resource मा (REST मानसिकता) सोच्नुहुन्छ कि भनेर मापन गर्न प्रयोग गर्छन्। सबैभन्दा सामान्य anti-pattern हरू — path मा verb, असंगत bahuvachan/ekvachan, र गहिरो nested URL — सबैले API लाई सिक्न र कायम राख्न गाह्रो बनाउँछन्, र REST को uniform-interface constraint आत्मसात नगरेको developer को सङ्केत दिन्छन्। राम्रो URI design ले चिन्ताहरूलाई पनि छुट्याइराख्छ: पहिचान path मा, filtering र pagination query string मा, जसले caching र routing सफा राख्छ।
विस्तृत उत्तरसहित IT अन्तर्वार्ता प्रश्नहरूको पुस्तकालय — जुनियरदेखि सिनियरसम्म।
दान गर्नुहोस्