REST

2012-01-24 14 views
5

में उन्नत क्वेरीज़ मैं REST के लिए एक और अधिक उन्नत क्वेरी तंत्र बनाने की कोशिश कर रहा हूं। मान लें कि मेरे पास निम्न है:REST

GET /data/users 

और यह उपयोगकर्ताओं की एक सूची देता है। तब उन उदाहरण के लिए लौटे फिल्टर करने के लिए मैं कहना चाहता हूँ:

GET /data/users?age=30 

30 साल पुराने उपयोगकर्ताओं की सूची प्राप्त करने के लिए।

GET /data/users?greaterThan(age)=30&lessThan(age)=40 

greaterThan और lessthan अन्य सांख्यिक, तिथि पर पुन: प्रयोज्य हो सकता है, आदि क्षेत्रों: 40. मैं चाहता अनिवार्य रूप से इस तरह के रूप पुन: प्रयोज्य ऑपरेटरों का एक सेट है करने के लिए - अब कहते हैं कि मैं उन 30 वर्ष की आयु चाहते हैं। यह मुझे अन्य ऑपरेटरों को जोड़ने की अनुमति देगा (इसमें शामिल है, साथ शुरू होता है, साथ समाप्त होता है, आदि)। मैं एक आरईएसटी नोब हूं इसलिए मुझे यकीन नहीं है कि यह आरईएसटी के मूल सिद्धांतों का उल्लंघन करता है या नहीं। कोई विचार?

+0

एमएस डायनेमिक्स 2011 प्लेटफ़ॉर्म ओडाटा इंटरफ़ेस के साथ कुछ ऐसा करता है। http://msdn.microsoft.com/en-us/library/gg309461.aspx शायद यह आपको कुछ जानकारी देगा। – user1231231412

+0

वाह के लिए वाह धन्यवाद, यह वास्तव में उपयोगी है कि माइक्रोसॉफ्ट की तरह किसी ने इसे कैसे कार्यान्वित किया। – NorthFork

+0

प्रतिक्रिया के लिए सभी को धन्यवाद, यह सहायक रहा है। – NorthFork

उत्तर

1

वैकल्पिक रूप से, आप वैकल्पिक पैरामीटर "minAge" और "maxAge" के साथ बस बेहतर हो सकते हैं।

विकल्प 2: मापदंडों के लिए मूल्य (रों) सांकेतिक शब्दों में बदलना परीक्षण इंगित करने के लिए प्रदर्शन किया जा करने के लिए: असमानताओं, पैटर्न मिलान आदि

यह कोई फर्क नहीं पड़ता कि आप जटिल बूलियन अभिव्यक्ति के लिए क्या कर गंदा हो जाता है। किसी बिंदु पर, आप लगभग क्वेरी विवरण के लिए दस्तावेज़ प्रारूप बनाना चाहते हैं, लेकिन इसे अब "GET" के रूप में सोचना मुश्किल है।

1

मैं क्वेरी पैरामीटर का मान की स्थापना ऑपरेटरों और इस तरह .. मानों की एक श्रेणी के लिए कुछ इस तरह

/data/users?age=[30,40] 

या

/data/users?age=>30&age=<40 

यह होगा के लिए वाक्य रचना शामिल करने के लिए इस पर गौर करेंगे पढ़ने के लिए थोड़ा आसान है, अगर आप किसी भी आरक्षित पात्रों का उपयोग कर रहे हैं तो यूआरएल एन्कोड करना सुनिश्चित करें