2011-11-01 13 views
6

यह मेरी समझ है कि HTTP में क्लाइंट सर्वर से जुड़ता है और डेटा का अनुरोध करता है। सर्वर क्लाइंट को कॉल नहीं कर सकता है। यदि ऐसा है तो डब्ल्यूसीएफ कॉलबैक कैसे काम करते हैं?डब्ल्यूसीएफ कॉलबैक HTTP पर कैसे काम करते हैं?

धन्यवाद,

जो

उत्तर

6

जब HTTP परिवहन के साथ उपयोग किया जाता है तो सर्वर क्लाइंट को कॉल करता है। इसे काम करने के लिए ग्राहक को सार्वजनिक अंतराल पर होना चाहिए, इसलिए फ़ायरवॉल और क्या है-आपको उचित रूप से कॉन्फ़िगर करने की आवश्यकता होगी।

http://msdn.microsoft.com/en-us/magazine/cc163537.aspx से

:

अपने संयोजन प्रकृति के कारण

, HTTP कॉलबैक के लिए इस्तेमाल नहीं किया जा सकता है और इसलिए आप BasicHttpBinding या WSHttpBinding से अधिक कॉलबैक का उपयोग नहीं कर सकते हैं। विंडोज कम्युनिकेशन फाउंडेशन NetTcp बाइंडिंग और नेट नामांकित पाइप बाइंडिंग के लिए कॉलबैक समर्थन प्रदान करता है क्योंकि अंतर्निहित परिवहन द्विपक्षीय है। HTTP पर कॉलबैक का समर्थन करने के लिए, विंडोज कम्युनिकेशन फाउंडेशन WSDualHttp बाइंडिंग प्रदान करता है, जो वास्तव में दो HTTP चैनल सेट करता है: क्लाइंट से सेवा के लिए कॉल और ग्राहक से सेवा के लिए कॉल के लिए एक।

और WSDualHttpBinding http://msdn.microsoft.com/en-us/library/system.servicemodel.wsdualhttpbinding.aspx के लिए संदर्भ से:

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

+0

हाय @ जेरेमीएमसीजी, मैं इन विषयों को देख रहा था। मैं क्लाइंट के रूप में एक सरल कंसोल एप्लिकेशन का उपयोग कर रहा हूं [यहां] (http://www.c-sharpcorner.com/uploadfile/dhananjaycoder/a-simple-duplex-service-in-wcf/)। मैं आपके उत्तर से समझता हूं कि क्लाइंट के पास सर्वर के हिट होने का अंत बिंदु होना चाहिए, मेरा सवाल यह है कि क्या कोई तरीका है कि मैं देख सकता हूं कि यह अंतराल क्या है? – SamGhatak

0

एक WCF डुप्लेक्स HTTP ग्राहक (उदाहरण के लिए जब का उपयोग कर एक wsDualHttpBinding) एक सर्वर भी शुरू कर देंगे, "असली" सर्वर जब यह वापस कॉल कर रहा है से अनुरोध को सुनने के लिए।

तो यह एक चीज़ का नाम देने के लिए एनएटी पर काम नहीं करेगा।

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