में LINK और UNLINK HTTP क्रियाओं का उपयोग कर मैं वर्तमान में एक आरईएसटी एपीआई लागू करने पर काम कर रहा हूं। मेरे पास संसाधन संसाधन है जिसमें व्यक्तिगत संसाधनों के बीच बड़ी संख्या में संबंध हैं।एक आरईएसटी एपीआई
मेरा प्रश्न है: आप एक मौजूदा तरीके से दो मौजूदा संसाधनों को कैसे जोड़ते हैं (रिलेशनशिप स्थापित करना)?
एक समाधान जो मैंने पार किया वह लिंक और यूएनLINK HTTP क्रियाओं का उपयोग था। एपीआई उपभोक्ता लिंक और यूआरआई के बाद दो संसाधनों को जोड़ने में सक्षम होगा:/resource1 /: id1/resource2 /: id2।
इस समाधान के साथ समस्या LINK और UNLINK क्रियाओं के लिए समर्थन की कमी है। न तो http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html या http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol क्रियाओं का जिक्र करते हैं, और वे काफी हद तक "भूल गए" प्रतीत होते हैं। हालांकि, मूल आरएफसी 2068 बताता है कि वे मौजूद हैं।
मुझे वास्तव में यह समाधान पसंद है। हालांकि, मुझे डर है कि कई एपीआई उपभोक्ता/ग्राहक LINK/UNLINK के समर्थन की कमी के कारण समाधान से निपटने में सक्षम नहीं होंगे। क्या यह एक स्वीकार्य समाधान है या मौजूदा संसाधनों को एक विश्वसनीय API में जोड़ने के लिए कोई बेहतर और/या अधिक सुरुचिपूर्ण समाधान है?
धन्यवाद
दो संसाधनों को जोड़ने वाले लिंक संसाधन क्यों नहीं बनाते? –
यह एक और समाधान है जिसे मैं विचार कर रहा था (यह इस [SO सवाल] में बहुत अधिक संभाला गया है (http://stackoverflow.com/questions/6324547/how-to-handle-many-to-many-relationships-in-a-restful -पीआई)। हालांकि, समस्या यह है कि हर प्रकार के संबंध के लिए, आपको एक नया संसाधन (प्रकार) परिभाषित करना होगा।यह संसाधन मॉडल को अधिक जटिल बनाता है और विशेष रूप से व्यावहारिक नहीं है (क्योंकि आपके एपीआई उपभोक्ता को बहुत अधिक संसाधनों के बारे में पता होना चाहिए)। लिंक/यूएनLINK इसे कम नहीं करता है: रिश्ते स्थापित करना बहुत अनुमानित है और इस प्रकार उपयोग करना आसान है। हालांकि, अगर LINK/UNLINK शायद ही समर्थित हैं ... –