BasicHttpBinding बनाम WsHttpBinding बनाम WebHttpBinding


297

WCF में HTTP आधारित बाइंडिंग के कई अलग-अलग प्रकार हैं:

इन 3 के बीच अंतर क्या हैं?

विशेष रूप से सुविधाओं / प्रदर्शन और संगतता के मामले में क्या अंतर हैं?


44
[BasicHttpBinding = Soap 1.1], [WsHttpBinding = Soap 1.2], [WebHttpBinding = Rest]
फ्रैंक मायत थू

दो सोप-आधारित बाइंडिंग की तुलना यहां की गई है: basicHttpBinding vs wsHttpBinding
DavidRR

जवाबों:


518

आप यहां सेब की तुलना संतरे से कर रहे हैं:

  • webHttpBinding रीस्ट -स्टाइल बाइंडिंग है, जहां आप मूल रूप से सिर्फ एक URL को हिट करते हैं और वेब सेवा से XML या JSON का ट्रक लोड प्राप्त करते हैं

  • basicHttpBinding और wsHttpBinding दो SOAP- आधारित बाइंडिंग हैं जो REST से काफी अलग हैं। SOAP के पास सेवा का विवरण, इसकी विधियाँ और डेटा का विस्तार से वर्णन करने के लिए WSDL और XSD होने का लाभ है (REST में ऐसा कुछ भी नहीं है - अभी तक)। दूसरी ओर, आप बस अपने ब्राउज़र के साथ एक wsHttpBinding समापन बिंदु पर ब्राउज़ नहीं कर सकते हैं और XML को देख सकते हैं - आपको एक SOAP क्लाइंट, जैसे WcfTestClient या अपने स्वयं के ऐप का उपयोग करना होगा।

तो आपका पहला निर्णय होना चाहिए: REST बनाम SOAP (या आप अपनी सेवा से दोनों प्रकार के समापन बिंदुओं को उजागर कर सकते हैं - यह भी संभव है)।

फिर, basicHttpBinding और wsHttpBinding के बीच, अंतर इस प्रकार हैं:

  • basicHttpBinding बहुत ही बुनियादी बंधन है - SOAP 1.1, सुरक्षा के मामले में बहुत ज्यादा नहीं, सुविधाओं के मामले में बहुत अधिक नहीं - लेकिन वहाँ से बाहर किसी भी SOAP ग्राहक के बारे में संगत -> अंतर के लिए महान, सुविधाओं और सुरक्षा पर कमजोर

  • wsHttpBinding पूर्ण विकसित बाध्यकारी है, जो WS- * सुविधाओं और मानकों के एक टन का समर्थन करता है - इसमें बहुत अधिक सुरक्षा विशेषताएं हैं, आप सत्रीय कनेक्शन का उपयोग कर सकते हैं, आप विश्वसनीय संदेश का उपयोग कर सकते हैं, आप ट्रांज़ैक्शनल नियंत्रण का उपयोग कर सकते हैं - बस एक बहुत अधिक सामान , लेकिन wsHttpBinding भी एक बहुत * भारी "है और आपके संदेशों में बहुत अधिक उपरि जोड़ता है क्योंकि वे पूरे नेटवर्क में हैं

इन कोड आउटजेक्ट लेख की जाँच के बीच एक इन-डेप्थ तुलना (एक टेबल और कोड उदाहरण सहित) के लिए: BasicHttpBinding और WsHttpBinding के बीच अंतर


1
मैं यहाँ कोई निर्णय नहीं ले रहा हूँ प्रिय, मैं सिर्फ इस अंतर को जानना चाहता था कि आपको पता होना चाहिए कि संतरे का स्वाद क्या है और सेब का भी यही कारण है कि मैंने यह सवाल पूछा। मैं WebHttpBinding सुविधा तुलना और प्रदर्शन के कार्यकाल में अधिक की आवश्यकता है
Mubashar

- गूगल या बिंग की जाँच करें और "बाकी बनाम सोप" के लिए खोज भार वहाँ जानकारी का!
marc_s

4
एक सुधार: wsHttpBinding स्ट्रीमिंग का समर्थन नहीं करता है। या क्या मैं कुछ न कुछ भूल रहा हूं? msdn.microsoft.com/en-us/library/ms730879.aspx
एंड्रयू शेफर्ड

1
@ एंड्रयू शेफर्ड: लिंक और सुधार के लिए धन्यवाद - आप बिल्कुल सही हैं, wsHttpBinding स्ट्रीमिंग का समर्थन नहीं करता है .....
marc_s

@ EduardoLeón REST के किरायेदारों में से एक HTTP में निर्मित सुविधाओं का लाभ उठाना है। प्रमाणीकरण HTTP में बनाया गया है, इसलिए आप संभावित रूप से किसी भी प्रकार के प्रमाणीकरण प्रदाता का उपयोग कर सकते हैं जो आप चाहते थे। यह बेसिक या NTLM की तरह सरल हो सकता है, या आप कुछ अधिक उन्नत कर सकते हैं जो OAuth / STS टोकन आदि का लाभ उठाते हैं
BrainSlugs83
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.