HATEOAS बाधा के साथ REST सेवा का निर्माण करते समय , लिंकिंग के माध्यम से संसाधनों के अस्तित्व का विज्ञापन करना बहुत आसान है। आप GET
मेरी साइट के मूल में हैं और मैं सभी प्रथम श्रेणी संसाधनों को सूचीबद्ध करने वाले मूल दस्तावेज के साथ प्रतिक्रिया देता हूं:
{
users: { href: "/users" }
questions { href: "/questions" }
}
ग्राहक जो समझते हैं कि इन href
मूल्यों को कैसे पढ़ना है, GET
उन पर अनुरोध कर सकते हैं और आवेदन में उपलब्ध सभी मौजूदा संसाधनों की खोज कर सकते हैं ।
यह मूल लुकअप परिदृश्यों के लिए अच्छी तरह से काम करता है, लेकिन यह इंगित नहीं करता है कि संसाधन क्वेरी योग्य है या नहीं। उदाहरण के लिए, प्रदर्शन करना उचित हो सकता है:
GET /users?surname=Smith
क्या कोई प्रारूप है जो इस क्वेरी की क्षमता को पर्याप्त जानकारी के साथ व्यक्त कर सकता है कि ग्राहक संसाधन के पूर्व ज्ञान के बिना एक सुसंगत क्वेरी बना सकता है?
इसके अतिरिक्त, यह व्यक्त करने का कोई तरीका है कि ग्राहक POST
को किसी दिए गए स्थान पर अपेक्षित स्थान के साथ प्रदर्शन करने की अनुमति है । उदाहरण के लिए, यह उम्मीद की जा सकती है कि एक ग्राहक एक नया प्रश्न संसाधन बनाने के लिए निम्नलिखित कार्य करे:
POST /questions
{
title: "Are there strategies for discovering REST services using HATEOAS?",
body: "When building a REST service with the HATEOAS constraint, it's very..."
}
मानव उपभोग के लिए प्रारूप के रूप में HTML का उपयोग करते समय, हम प्रपत्रों के उपयोग के माध्यम से इसे बहुत कुछ व्यक्त कर सकते हैं और लिखित संकेतों के माध्यम से मानव को उन कार्यों की खोज करने की अनुमति देते हैं जो उन्हें सेवा पर प्रदर्शन करने की अनुमति है।
क्या ऐसे प्रारूप हैं जो ग्राहकों के लिए समान चीजों में सक्षम हैं?