प्रश्न का संक्षिप्त संस्करण:
क्या किसी विशेष यूआरआई में "प्राप्त करें" उस यूआरआई को "पुट" से मेल खाने की ज़रूरत है?REST प्रश्न: एक प्रतिनिधित्व PUT, एक अलग मिलता है?
मुझे नहीं लगता। यहां बताया गया है:
यह देखते हुए कि एक संसाधन एक अमूर्त चीज है जो क्लाइंट द्वारा सैद्धांतिक रूप से अज्ञात है, जब हम एक पुट करते हैं, तो हमें केवल एक प्रतिनिधित्व भेजना होगा। आरएफसी 2616 पर गठबंधन के आधार पर, यह पूरी तरह से निर्दिष्ट नहीं है कि इसका अर्थ संसाधन के लिए क्या है जिसमें कई (संभावित रूप से अनंत?) प्रतिनिधित्व हैं, लेकिन यहां मेरे विचार हैं; कृपया मुझे बताएं कि क्या आप सहमत हैं:
मेरी उम्मीद यह है कि यदि मैं किसी संसाधन को प्रस्तुत करता हूं, तो उस यूआरआई में संसाधन के अन्य सभी प्रस्तुतिकरणों को आवश्यक (संभावित रूप से अद्यतन) रखा जाना चाहिए। दूसरे शब्दों में, आप संसाधन को बता रहे हैं "स्वयं को फिर से परिभाषित करने के लिए इस प्रस्तुति का उपयोग करें"।
PUT/संसाधन/foo/myvacation
सामग्री-प्रकार:: image/जेपीजी
...
और अनुवर्ती
इस प्रकार, मैं यह करने के लिए सक्षम होना चाहिए इस के साथ:
प्राप्त/संसाधन/foo/myvacation
स्वीकार करें: छवि/png
...
और अद्यतन किसी अन्य प्रारूप में myvacation के संस्करण प्राप्त (सर्वर यह सोचते हैं कि कैसे करना जानता है)। कि से Extrapolating, इस समग्र परमाणु "छवि + मेटाडेटा" PUT भी कानूनी होना चाहिए:
PUT/संसाधन/foo/myvacation
सामग्री-प्रकार: बहुखण्डीय/फार्म-डेटासामग्री-स्वभाव: फार्म डेटा; नाम = "दस्तावेज़"
सामग्री-प्रकार: छवि/जेपीजी
[..]
सामग्री-स्वभाव: फॉर्म-डेटा; नाम = "iptc"
सामग्री-प्रकार: एप्लिकेशन/आईपीटीसी
[..]
सामग्री-स्वभाव: फॉर्म-डेटा; नाम = "exif"
सामग्री-प्रकार: आवेदन/exif
[..]
और फिर, सर्वर साइड विषय बातचीत (RFC2616 खंड 12.1) कुछ भी बस के बारे में के आधार पर जगह ले सकते हैं, क्योंकि, हम
इस के लिए "दस्तावेज़" सामग्री के लिए डिफ़ॉल्ट कर सकते हैंप्राप्त/संसाधन/foo/myvacation
सामग्री-प्रकार:: image/जेपीजी
[..]
या यदि आप मानते हैं कि मैं आरएफसी 2396 अनुभाग 3 करता हूं।4 "क्वेरी घटक संसाधन द्वारा व्याख्या की जाने वाली जानकारी की एक स्ट्रिंग है।" इसका मतलब है कि एक क्वेरी स्ट्रिंग वाला यूआरआई एक यूआरआई के रूप में एक क्वेरी स्ट्रिंग के बिना एक यूआरआई के रूप में संदर्भित करता है (और संसाधन के लिए केवल आवेदन/एक्स-फॉर्म-यूआरलेकोडेड डेटा भेजने के साथ आइसोमोर्फिक है), तो यह भी कानूनी होना चाहिए:
?प्राप्त/संसाधन/foo/myvacation सामग्री = exif
सामग्री-प्रकार: आवेदन/exif
[..]
PUT का वर्णन कहते हैं:
PUT विधि अनुरोध कि संलग्न है डी इकाई आपूर्ति अनुरोध यूआरआई के तहत संग्रहीत किया जाना चाहिए।
मेरे लिए, यह काफी विरोधी है, जब तक कि आप इसे बहुत उदार तरीके से नहीं पढ़ते। मेरी व्याख्या है "पुट विधि अनुरोध करता है कि संलग्न इकाई के प्रतिनिधित्व के आधार पर आपूर्ति अनुरोध-यूआरआई पर संसाधन बनाया या अपडेट किया जाए।"
बाद में, हम पाते हैं:
पोस्ट के बीच मौलिक अंतर और अनुरोधों डाल अनुरोध- URI का अलग अर्थ में दिखाई देता है। एक POST अनुरोध में यूआरआई संसाधन की पहचान करता है जो संलग्न इकाई को संभालेगा। वह संसाधन डेटा-स्वीकार्य प्रक्रिया हो सकता है, किसी अन्य प्रोटोकॉल के लिए प्रवेश द्वार, या एक अलग इकाई जो एनोटेशन स्वीकार करती है। इसके विपरीत, एक पुट अनुरोध में यूआरआई अनुरोध के साथ संलग्न इकाई की पहचान करता है - उपयोगकर्ता एजेंट जानता है कि यूआरआई क्या इरादा रखता है और सर्वर को किसी अन्य संसाधन के अनुरोध को लागू करने का प्रयास नहीं करना चाहिए।
हमें इसी रचनात्मक रूप से इसे पढ़ने की आवश्यकता है, लेकिन यहां की मुख्य बिट्स "जानता है कि यूआरआई क्या इरादा है" और "अनुरोध लागू करें"।
तो, मेरे लिए किसी दिए गए यूआरआई में जीईटी द्वारा प्रस्तुत प्रतिनिधित्व को अनिवार्य रूप से वही प्रतिनिधित्व होना जरूरी नहीं है जो दिए गए यूआरआई को पॉट किया गया हो, यह सिर्फ सुसंगत होना चाहिए।
सच या गलत?
मैंने हाल ही में पाया है कि आरएफसी 2616 को आरएफसी 3 9 86 द्वारा प्रतिस्थापित किया गया है, जो इस क्वेरी को परिभाषित करता है कि इसका उपयोग संसाधन का पता लगाने के लिए किया जा सकता है। मुझे यकीन नहीं है कि मुझे यह नई परिभाषा पसंद है। : -/ –