मैं इंट्रानेट ऐप के लिए HTTP- आधारित API डिज़ाइन कर रहा हूं। मुझे लगता है कि यह चीजों की भव्य योजना में एक बहुत छोटी चिंता है, लेकिन: क्या मुझे यूआरआई में शब्दों को परिसीमित करने के लिए हाइफ़न, अंडरस्कोर, या कैमल कैस का उपयोग करना चाहिए?
यहाँ मेरे प्रारंभिक विचार हैं:
टेढ़े मेढ़े संयुक्त शब्द
- यदि सर्वर केस-असंवेदनशील है तो संभव समस्याएं
- क्वेरी स्ट्रिंग कुंजियों ( http://api.example.com ? searchQuery = ...) में काफी व्यापक उपयोग होता है , लेकिन अन्य URI भागों में नहीं
हैफ़ेन
- अन्य विकल्पों की तुलना में अधिक सौंदर्यवादी रूप से मनभावन
- URI के पथ भाग में व्यापक रूप से उपयोग किया जा रहा है
- जंगली में कभी भी हाइफ़न किए गए क्वेरी स्ट्रिंग कुंजी को नहीं देखा गया
- एसईओ के लिए संभवतः बेहतर है (यह एक मिथक हो सकता है)
अंडरस्कोर
- प्रोग्रामिंग भाषाओं को संभालने के लिए संभावित रूप से आसान है
- कई लोकप्रिय API (Facebook, Netflix, StackExchange, आदि) URI के सभी भागों में अंडरस्कोर का उपयोग कर रहे हैं।
मैं हर चीज के लिए अंडरस्कोर की तरफ झुक रहा हूं। यह तथ्य कि अधिकांश बड़े खिलाड़ी उनका उपयोग कर रहे हैं, सम्मोहक है (देखें https://stackoverflow.com/a/608458/360270 )।
hyphenated query string in the wild
। यह आमतौर पर ऊंट के लिए एक समय है।