http - Which URL describes the resource the best? -
/ प्रतियोगिताओं / 1 / क्लब / 5 / खिलाड़ियों / खिलाड़ियों / खोज? Club_id = 5 / players? Club_id = 5 मुझे संसाधन के लिए प्रथम श्रेणी के URL का कब उपयोग करना चाहिए, और मुझे नेस्टेड यूआरएल कब का उपयोग करना चाहिए?
Update 1 उत्तर के लिए धन्यवाद अभी तक मैं कुछ और चीजों को स्पष्ट करने की कोशिश करता हूं।
प्रतियोगिता और क्लब में कई-से-कई रिश्ते हैं क्लब कई प्रतियोगिताओं में भाग ले सकते हैं। मुझे लगता है कि क्लब को एक प्रथम श्रेणी इकाई बनाना होगा, इसलिए एक क्लब का उपयोग करने का तरीका होगा:
/ clubs / 33 लेकिन मैं भी एक विशिष्ट प्रतियोगिता में भाग लेने वाले क्लबों का उपयोग करने में सक्षम होने की आवश्यकता है, इसलिए मुझे इसके लिए कुछ भी चाहिए:
/ प्रतियोगिताओं / 2 / क्लब लेकिन किसी व्यक्ति ने उल्लेख किया है कि कई यूआरआई के माध्यम से एक संसाधन सुलभ बनाने की सिफारिश नहीं है।
/ प्रतियोगिताओं / 2 / क्लब / 33 / खिलाड़ी / 5 < / कोड> लेकिन इसका उपयोग करें:
/ clubs / 33 / players / 5 क्लब में एक-एक प्लेयर के साथ कई रिश्ते।
मैं पथ तत्वों का उपयोग करता हूं यदि संबंध "पेड़ / निर्देशिका" लगता है " जैसे क्लब में खिलाड़ियों के / क्लब / बर्लिन / खिलाड़ी हैं)। पैरामीटर अधिक "टैग्स" हैं, मैं इसे अक्सर अक्सर खोज-फिल्टर के लिए उपयोग करता हूं (उदाहरण के तौर पर 'बर्लिन' क्लब के रक्षकों को 22 / clubs / berlin / players? Position = defender & amp; age = 22 के रूप में उम्र के साथ) । मैं 'डोमेन-महत्व' के अनुसार यूआरएल संरचना का निर्माण करता हूं। सबसे बुनियादी अवधारणाओं को रूट में जाना चाहिए। यदि संभव हो तो यूआरएल-संरचना में बहुत गहराई से न जाए, तो मैं ऐसे अन्य संग्रहों को डुप्लिकेट या बनाना नहीं चाहता जो समान संसाधनों का प्रतिनिधित्व करते हैं (कोड + प्रलेखन में डबल रखरखाव लागत)।
आम तौर पर डाल / जड़ के रूप में क्लब अधिक प्राकृतिक लगता है: / क्लब / {club_id} / खिलाड़ियों मैं केवल / प्रतियोगिताओं के माध्यम से खिलाड़ियों को बेनकाब करेंगे / {Comp_id} / clubs / {club_id} / खिलाड़ी , यदि खिलाड़ियों का सेट / clubs / {club_id} / players जैसा अलग है, उदा। प्रतियोगिता के दौरान कई खिलाड़ियों को अवरुद्ध कर दिया गया है या इसे मैच टीम के लिए नहीं बनाया गया है। / प्रतियोगिताओं के साथ क्या मतलब है? क्या यह एक टूर्नामेंट या एक मैच है? यदि दो क्लबों के साथ एक मैच शायद घरेलू + दूर डोमेन-अवधारणाओं का उपयोग करें: / प्रतियोगिताओं / {comp_id} / होम-क्लब और / प्रतियोगिताओं / {comp_id} / दूर-क्लब अपडेट-1 उत्तर
आपके अपडेट-प्रश्न पर यहां मेरा विचार है:
मुझे लगता है कि / प्रतियोगिताओं / 2 / क्लब / क्लब का एक सबसेट है, प्रत्येक क्लब हर प्रतियोगिता में प्रतिस्पर्धा नहीं कर रहा है इसलिए दोनों संसाधन अलग हैं, इसलिए दो यूआरएल ठीक हैं। फिर से सोचकर / प्रतियोगिताओं / 2 / क्लब / 33 / खिलाड़ी / 5 / भी ठीक होना चाहिए (लेकिन यह महत्वपूर्ण है कि सर्वर कोड दोहराव से बचा है)। यह यूआरएल अनिवार्य भी हो सकता है जब लौटाए गए संसाधन / क्लब / 33 / खिलाड़ियों (जैसे खिलाड़ी घायल हो गए हैं या टीम-साइज की सीमा विशिष्ट प्रतियोगिता के लिए मारा गया है) का एक सबसेट है।
Comments
Post a Comment