मैं एक REST API डिजाइनिंग रहा हूँ और "लोगों के लिए" एक इकाई है:LIKE मानदंडों के साथ एक आरईएसटी एपीआई कैसे डिजाइन करें?
GET http://localhost/api/people
प्रणाली
GET http://localhost/api/people/1
में सभी लोगों की एक सूची रिटर्न आईडी 1.
के साथ व्यक्ति रिटर्नGET http://localhost/api/people?forename=john&surname=smith
मिलान करने वाले उपनामों और उपनामों के साथ सभी लोगों को वापस लौटाता है लेकिन मुझे और आवश्यकता है। एपीआई उपभोक्ताओं को उन सभी लोगों को पुनर्प्राप्त करने की इजाजत देने का सबसे साफ/सर्वोत्तम अभ्यास तरीका क्या है, जिनके पूर्वनाम उदाहरण के लिए "जो" से शुरू होता है।
मैंने देखा है कुछ APIs इस तरह कार्य करें:
GET http://localhost/api/people?forename=jo~&surname=smith
जहां टिल्ड एक "फजी" मैच का प्रतीक है। दूसरी तरफ मैंने इसे पूरी तरह से अलग मानदंडों के साथ लागू किया है।
GET http://localhost/api/people?forename-startswith=jo&surname=smith
जो -soundslike (soundex मैच के कुछ प्रकार के लिए) पर विचार मैं -endswith हो सकता है, -contains, थोड़ा बोझिल लगता है
।
कोई भी ऐसे अनुभव से सुझाव दे सकता है जो बेहतर काम करता है और अच्छी तरह से डिज़ाइन किए गए आरईएसटी एपीआई के किसी भी उदाहरण के समान कार्यक्षमता है।