2009-05-05 18 views
10

JSON वेब सेवा बनाने का सबसे अच्छा तरीका क्या है? हमारे पास जावा का उपयोग करने वाली एक और टीम है और वे JSON का उपयोग करके किए गए सभी संचार करने का आग्रह करते हैं। मैं किसी तीसरे पक्ष के ढांचे के बजाय डब्ल्यूसीएफ का उपयोग करना पसंद करूंगा।डब्ल्यूसीएफ जेसन वेब सेवा

मुझे यह ब्लॉग मिला: http://www.west-wind.com/weblog/posts/164419.aspx, और यह सुझाव देता है कि माइक्रोसॉफ्ट कार्यान्वयन एम $ विशिष्ट बकवास के साथ त्रुटिपूर्ण है।

+1

तुम खुद यकीन है कि रिक रिलीज बिट के साथ काम कर रहा था बनाने की कोशिश कर सकते हैं। इस सब के –

उत्तर

-4

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

+0

मैं यह समझने कारण है कि आप नीचे 7 बार मतदान किया गया हो रही है । ऐसा लगता है कि आप पाया आप एक वेब सेवा है कि JSON रिटर्न साथ काम करने का सबसे अच्छा तरीका है के साथ उत्तर है। – pqsk

13

यदि आप डब्ल्यूसीएफ और 3.5 फ्रेमवर्क का उपयोग करते हैं, तो यह आसान नहीं हो सकता है। जब आप WebGet विशेषता के साथ अपने ऑपरेशन कॉन्ट्रैक्ट्स को चिह्नित करते हैं, तो बस ResponseFormat पैरामीटर को WebMessageFormat.Json पर सेट करें। जब सेवा को तुरंत एक्सेस किया जाता है, तो यह DataContractJsonSerializer का उपयोग कर डेटा वापस कर देगा।

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

+3

अच्छा उदाहरण: http://stackoverflow.com/questions/2086666/wcf-how-do-i-return-clean-json/ – Cheeso

4

मैं ServiceStack में WCF करने के लिए एक परिपक्व मुक्त स्रोत विकल्प, एक आधुनिक, कोड-प्रथम, मॉडल संचालित, WCF प्रतिस्थापन वेब सेवाओं संक्षिप्त बनाने के लिए रूपरेखा encouraging code and remote best-practices, सूखा, high-perfomance, scalable REST web services बनाए रखें।

इसमें .NET's fastest JSON Serializer शामिल है और इसमें स्वचालित समर्थन JSON, JSONP, CORS हेडर के साथ-साथ फॉर्म-urlencoded/multipart-formdata भी है। ऑनलाइन डेमो देखने के लिए एक अच्छी शुरुआत है क्योंकि वे सभी अजाक्स का उपयोग करते हैं।

इसके अलावा, वहाँ कोई एक्सएमएल config है, या कोड पीढ़ी और अपने 'लिखने-एक बार' सी # वेब सेवा सभी JSON, XML, SOAP, JSV, CSV, HTML अंतिमबिंदुओं हुक्स के साथ स्वचालित रूप से बाहर के बॉक्स सक्रिय है, अपने स्वयं के Content Types में प्लग करने के लिए यदि आवश्यक हो तो प्रदान करता है ।

इसमें generic sync/async service clients भी एक तेज, टाइप किया गया, क्लाइंट/सर्वर संचार गेटवे अंत-टू-एंड प्रदान करता है।

यह सब एक सरल वेब सेवा बनाने के लिए आवश्यक कोड की पूरी उदाहरण है, कि किसी भी config के बिना स्वचालित रूप से है, पंजीकृत है और उपलब्ध कराया पर सभी web data formats on pre-defined and custom REST-ful routes:

public class Hello { 
    public string Name { get; set; } 
} 

public class HelloResponse { 
    public string Result { get; set; } 
} 

public class HelloService : IService<Hello> { 
    public object Execute(Hello request) 
    { 
     return new HelloResponse { Result = "Hello, " + request.Name }; 
    } 
} 

सेवा से ऊपर कहा जा सकता है (किसी भी निर्माण के चरणों के बिना/कोड पीढ़ी) के नीचे लाइन के साथ सी # में: साथ

var client = new JsonServiceClient(baseUrl); 
var response = client.Send<HelloResponse>(new Hello { Name = "World!" }); 
Console.WriteLine(response.Result); // => Hello, World 

और में jQuery:

$.getJSON('hello/World!', function(r){ 
    alert(r.Result); 
}); 
+1

चीयर्स, मैं निश्चित रूप से यह एक जाना दे देंगे! – Grzenio

2

JSON वेब सेवा बनाने का सबसे अच्छा तरीका क्या है? हमारे पास जावा का उपयोग करने वाली एक और टीम है और वे JSON का उपयोग करके किए गए सभी संचार रखने का आग्रह करते हैं। मैं किसी तीसरे पक्ष ढांचे के बजाय डब्ल्यूसीएफ का उपयोग करना पसंद करूंगा।

यहां एक आसान-टू-फॉलो वॉकथ्रू है, जो आपको अपनी पहली डब्ल्यूसीएफ सेवा स्थापित करने की प्रक्रिया के माध्यम से ले जाती है, फिर इसे SQL सर्वर डेटाबेस से जोड़ती है।

http://mikesknowledgebase.com/pages/Services/WebServices-Page1.htm

यह माइक्रोसॉफ्ट के प्रिय नॉर्थविंड एसक्यूएल सर्वर डेटाबेस का उपयोग करता है, और पता चलता है एक सरल JSON WCF वेब सेवा लिखने के लिए कैसे पढ़ सकते हैं और यह डेटा है लिखने के लिए।

enter image description here

ओह, और यह तो जावास्क्रिप्ट या iOS एप्लिकेशन का उपयोग कर JSON डेटा का उपभोग करने के लिए कैसे पता चलता है।

शुभकामनाएं!

+0

इस लेख भी मुझे मदद की - मैं WCF वेब सेवाओं के लिए बहुत नया हूँ। – Krondorian

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