2009-04-29 14 views
29

मेरे पास एक डब्ल्यूसीएफ सेवा है जो मूल http बाध्यकारी का उपयोग करती है। मैं ब्राउज़र के माध्यम से अपने संचालन/विधियों का उपयोग कैसे करूं?ब्राउज़र के माध्यम से डब्ल्यूसीएफ सेवा विधि का आह्वान

उत्तर

10

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

इसके अलावा, आप ब्राउज़र से सीधे एसओएपी वेब सेवा नहीं कॉल कर सकते क्योंकि इसे फॉर्म पोस्ट की आवश्यकता होती है। आप SOAP का उपयोग करके इसका परीक्षण करने के लिए एक टूल का उपयोग कर सकते हैं, हालांकि, मैं Soap UI की अनुशंसा करता हूं। यह जावा में लिखा गया है लेकिन मैं इसके खिलाफ इसे पकड़ने की कोशिश नहीं करता हूं। :)

36

आप ब्राउज़र में नमूना

[OperationContract] 
[WebGet(UriTemplate = "/placesList/{userId}", 
ResponseFormat = WebMessageFormat.Xml)] 
List<Places> GetAllPlacesForUser(String userId) 
{ 
    string xml = ""; 
    // build xml here 
    return xml; 
} 

निम्नलिखित अब की तरह अपने विधि के लिए WebGetAttribute जोड़ने के लिए की आवश्यकता होगी, तो आप इस

http://localhost:8085/GeoPlacesDataService/placesList/10
की तरह विधि आह्वान सकता जहां 10 उपयोगकर्ता आईडी पैरामीटर।

नोट: जोड़ने के लिए WebGetAttribute आप संदर्भ के लिए System.ServiceModel.Web नाम स्थान जो एक अलग विधानसभा

+6

वेबेट मेरे लिए काम नहीं करता है। आईई मुझे "बुरा अनुरोध" दिखाता है। – Josh

6

में पाया जाता है इसके बाद के संस्करण कोड जोड़ने के बाद राशि के लिए, अंत बिंदु संपत्ति में संशोधित किया जाना है web.config, binding="webHttpBinding" और behaviorConfiguration="webHttp"

+3

क्या आप इन गुणों वाले टैग निर्दिष्ट करना चाहते हैं, कृपया? या यदि आप हमें अपनी web.config फ़ाइल प्रदान करते हैं तो यह बहुत दयालु होगा। –

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