2016-04-06 11 views
7

के बीच अंतर अब मैं लंबे समय से पूछताछ कर रहा हूं। हमें वास्तव में वेब एपीआई का उपयोग करने की आवश्यकता है और हमें डब्ल्यूसीएफ आराम सेवाओं का उपयोग कहां करना चाहिए। हम कभी भी वेब एपीआई में हासिल करना चाहते हैं हम डब्ल्यूसीएफ रेस्ट में हासिल करने में सक्षम हैं। मैंने जवाबों में खोदने की कोशिश की लेकिन मुझे यूआरआई टेम्पलेट्स, कॉन्ट्रैक्ट्स, एंडपॉइंट्स जैसे डब्ल्यूसीएफ में अतिरिक्त सेटिंग करने की जरूरत है। लेकिन सेटिंग्स पर इसकी अधिक जानकारी है, लेकिन मैं डब्ल्यूसीएफ रेस्टफुल सर्विसेज का उपयोग करने के पीछे असली कारण जानना चाहता था।डब्ल्यूसीएफ आराम सेवाओं और वेब एपीआई

+0

यदि आप एक HTTP सेवा का उपयोग करना चाहते हैं तो वेब एपीआई अन्यथा डब्ल्यूसीएफ – Thomas

+0

[डब्ल्यूसीएफ बनाम एएसपी.नेट वेब एपीआई] के संभावित डुप्लिकेट का उपयोग करें (http://stackoverflow.com/questions/9348639/wcf-vs-asp-net -web-api) – Thomas

उत्तर

18

वेब सेवा

  • यह XML स्वरूप में साबुन और रिटर्न डेटा पर आधारित है।
  • यह केवल HTTP प्रोटोकॉल का समर्थन करता है।
  • यह खुला स्रोत नहीं है लेकिन एक्सएमएल को समझने वाले किसी भी ग्राहक द्वारा इसका उपभोग किया जा सकता है।
  • इसे केवल आईआईएस पर होस्ट किया जा सकता है।


WCF

  • यह भी XML स्वरूप में साबुन और रिटर्न डेटा पर आधारित है।
  • यह वेब सेवाओं (एएसएमएक्स) का विकास है और टीसीपी, एचटीटीपी, एचटीटीपीएस, नामांकित पाइप्स, एमएसएमक्यू जैसे विभिन्न प्रोटोकॉल का समर्थन करता है।
  • डब्ल्यूसीएफ के साथ मुख्य मुद्दा इसकी थकाऊ और व्यापक विन्यास है।
  • यह खुला स्रोत नहीं है लेकिन एक्सएमएल को समझने वाले किसी भी ग्राहक द्वारा इसका उपभोग किया जा सकता है।
  • इसे एप्लिकेशन या आईआईएस या विंडो सेवा का उपयोग करके होस्ट किया जा सकता है।


WCF बाकी

  • एक WCF बाकी सेवा आप webHttpBindings सक्षम करने के लिए के रूप में WCF का उपयोग करें।
  • यह क्रमश: [WebGet] और [WebInvoke] विशेषताओं द्वारा HTTP GET और POST क्रियाओं का समर्थन करता है।
  • अन्य HTTP क्रियाओं को सक्षम करने के लिए आपको .svc फ़ाइलों पर उस विशेष क्रिया के अनुरोध को स्वीकार करने के लिए आईआईएस में कुछ कॉन्फ़िगरेशन करना है।
  • WebGet का उपयोग कर पैरामीटर के माध्यम से डेटा पास करने की आवश्यकता कॉन्फ़िगरेशन की आवश्यकता है। UriTemplate निर्दिष्ट होना चाहिए।
  • यह एक्सएमएल, जेएसओएन और एटीओएम डेटा प्रारूप का समर्थन करता है।


वेब एपीआई

  • यह आसान और सरल तरीका HTTP सेवाओं के निर्माण के लिए नए रूपरेखा है।
  • वेब एपीआई ओपन सोर्स .NET Framework का उपयोग कर रीस्टफुल सेवाओं के निर्माण के लिए एक आदर्श मंच है।
  • डब्ल्यूसीएफ आरईएसटी सेवा के विपरीत, यह HTTP की पूर्ण सुविधाओं (जैसे यूआरआई, अनुरोध/प्रतिक्रिया शीर्षलेख, कैशिंग, संस्करण, विभिन्न सामग्री प्रारूप) का उपयोग करता है।
  • यह भी इस तरह के मार्ग, नियंत्रक, कार्रवाई के परिणाम, फिल्टर, मॉडल बाइंडरों आईओसी कंटेनर या निर्भरता इंजेक्शन, इकाई परीक्षण है कि यह अधिक सरल और मजबूत बनाता है के रूप में MVC सुविधाओं का समर्थन करता।
  • इसे एप्लिकेशन या आईआईएस में होस्ट किया जा सकता है।
  • यह हल्का वजन वास्तुकला है और उन उपकरणों के लिए अच्छा है जिनके पास स्मार्ट फोन की तरह सीमित बैंडविड्थ है।
  • प्रतिक्रियाएँ वेब एपीआई MediaTypeFormatter JSON, एक्सएमएल या जो कुछ भी प्रारूप आप एक MediaTypeFormatter के रूप में जोड़ना चाहते हैं में से प्रारूपित हैं।


WCF या वेब एपीआई के बीच चुनना

  • चुनें WCF जब आप एक सेवा है कि विशेष स्थितियों का समर्थन करना चाहिए बनाना चाहते हैं इस तरह के एक तरह से संदेश, संदेश कतार, द्वैध संचार आदि
  • के रूप में
  • चुनें WCF जब आप जब इस तरह के टीसीपी, नाम पाइप्स, या शायद यूडीपी (WCF 4.5 में) के रूप में, उपलब्ध एक सेवा तेजी से परिवहन चैनलों का उपयोग कर सकते हैं कि बनाना चाहते हैं, और आप भी HTTP का समर्थन करने के लिए जब अन्य सभी परिवहन चैनल हैं चाहते हैं अनुपलब्ध है।
  • जब आप HTTP (यूआरआई, अनुरोध/प्रतिक्रिया हेडर, कैशिंग, संस्करण, विभिन्न सामग्री प्रारूपों की तरह) का उपयोग नहीं से भरा सुविधाओं का उपयोग कर सकते हैं कि ऊपर एक संसाधन उन्मुख सेवाओं बनाना चाहते हैं वेब एपीआई का चयन करें।
  • जब आप ब्राउज़र, मोबाइल, आईफोन और टैबलेट सहित ग्राहकों की एक विस्तृत श्रृंखला में अपनी सेवा का खुलासा करना चाहते हैं तो वेब एपीआई चुनें।

अधिक जानकारी के लिए आप http://www.c-sharpcorner.com/UploadFile/8a67c0/who-is-winner-web-api-or-wcf/ देख सकते हैं।

+0

फिर भी मुझे जवाब नहीं मिला है, हम अभी भी डब्ल्यूसीएफ रेस्ट में सभी चीजें हासिल कर सकते हैं जिसे हम वेब एपीआई में कर सकते हैं। तो क्यों माइक्रोसॉफ्ट, जाल एपीआई है क्या WebAPI से अधिक WCF बाकी की बड़ी खामी WCF हिस्सा – abhijit

+2

पर सभी सेटिंग्स को छोड़कर अभिजीत यदि आप तो रात में जहां प्रौद्योगिकी परिवर्तन के इस रुझान में दुनिया में जैसे उपयोगकर्ताओं की एक विस्तृत श्रृंखला के लिए अपनी कार्यक्षमता को बेनकाब करना चाहते हैं वेबकैपी वेब एपीआई आपके हल्के वजन और अन्य कार्यक्षमताओं के साथ सबसे अच्छा विकल्प है। – Mohit

संबंधित मुद्दे