आप REST और SOAP की तुलना नहीं कर सकते। REST एक वास्तुशिल्प शैली है जबकि SOAP एक प्रोटोकॉल है।
दुर्भाग्य से, REST बोलचाल की भाषा बन गया RESTful HTTP सेवा के लिए एक पर्यायवाची, इसका अर्थ है कि HTTP (अनुप्रयोग) प्रोटोकॉल के साथ REST स्टाइल आर्किटेक्चर का एहसास।
REST निम्नलिखित सिद्धांतों (बाधाओं और तत्वों) पर आधारित है (RESTful HTTP में बोध कोष्ठक में) [1] ।
- स्टेटलेस (HTTP एक स्टेटलेस प्रोटोकॉल है)
- संसाधन (URI द्वारा पहचाना गया)
- यूनिफ़ॉर्म इंटरफ़ेस (HTTP तरीके)
- प्रतिनिधित्व (MIME-TYPE)
- HATEOS (हाइपरलिंक)
- कैश (HTTP कैश)
दूसरी तरफ बहुत से लोग SOAP को WSDL और SOAP पर आधारित एक वेब सेवा कहते हैं, जो W3C वेब सेवा वास्तुकला [2] का हिस्सा है ।
- SOAP का उपयोग सूचना (मूल रूप से विधि का नाम, पैरामीटर, रिटर्न मान, डेटा प्रकार, ...) का आदान-प्रदान करने के लिए प्रोटोकॉल के रूप में किया जाता है।
- WSDL वेब सेवा का वर्णन करने के लिए एक इंटरफ़ेस परिभाषा भाषा।
SOAP * का वर्तमान में क्या महत्व है?
SOAP एक W3C मानक है और इसका उपयोग W3C वेब सेवाओं में सूचना विनिमय प्रारूप के रूप में किया जाता है। वे वेब सेवाएँ थीं - विशेष रूप से 2008 (+ - 3 वर्ष) के आस-पास SOAs (सेवा-उन्मुख आर्कटिटिटेक) के प्रचार के दौरान - और (दुर्भाग्य से) अभी भी ज्यादातर एंटरप्राइज़ अनुप्रयोगों में लागू की जाती हैं।
इसके कई कारण हैं। तब Restful HTTP अच्छी तरह से ज्ञात नहीं था, और यह गलत समझा गया था। दुर्भाग्य से, यह अभी भी गलत समझा गया है कि अन्य उत्तरों पर एक नज़र डालें
„[...] बाकी SOAP [...] की तुलना में बहुत अधिक सीमित है।
Is REST का प्राथमिक उद्देश्य इंटरनेट पर संसाधनों का प्रतिनिधित्व करना है [...]।
इसके अतिरिक्त, SOAP (और WSDL) W3C वेब सेवा प्रोटोकॉल स्टैक का एक हिस्सा है जो वेब सेवा को लागू करने के लिए और भी अधिक मानक प्रदान करता है।
क्या लोग अभी भी नए सोप-आधारित एपीआई विकसित कर रहे हैं, या यह अब एक विरासत है?
तो हां, अभी भी हैं और भविष्य के सिस्टम में भी होंगे, जो SOAP का उपयोग कर रहे हैं (कम से कम उद्यम प्रणालियों में, ज्यादातर दरवाजे के पीछे)। लेकिन बहुमत आजकल "रेस्ट" के कुछ प्रकार करने की कोशिश कर रहा है।
अगर SOAP और REST के बीच इस अंतर के बारे में गलत हो तो क्या कोई मुझे सही कर सकता है?
यह कहना कि डेटा ट्रांसफर के लिए REST अधिक लचीली स्टेटलेस आर्किटेक्चर है, अच्छी व्याख्या नहीं है। सामान्य तौर पर बोली जाने वाली REST विशिष्ट बाधाओं और तत्वों के साथ एक वास्तुकला शैली है। जबकि SOAP एक सूचना विनिमय प्रोटोकॉल है।
जैसे मैंने पहले ही लिखा था आप उनकी तुलना नहीं कर सकते। लेकिन आप एक RESTful HTTP वेब सेवा की तुलना SOAP / WSDL वेब सेवा से कर सकते हैं।