मैं Dojo फ़्रेम कार्य के लिए नया हूं, इसलिए कृपया सहन करेंमेरे साथ। मेरे पास एक तरह से लागू की गई सेवा है जो JSON प्रतिक्रिया को वापस कर देगी। मैं UI के लिए Dojo फ्रेम वर्क का उपयोग कर रहा हूं। मुझे सर्वर से अनुरोध करने और डोज में प्रतिक्रिया प्राप्त करने के सही तरीके के बारे में निश्चित नहीं है।
मुझे सर्वर से अनुरोध करने और प्रतिक्रिया प्राप्त करने के 3 तरीके मिले। यकीन नहीं होता कि यह गलत है या दूर से भी सही है
1)
request(contextName+"/service/getquestions/projectId/"+projectId,{
handleAs: "json"
}).then(function(data){alert("something")});
2)
var questionAnswerStore = new JsonRest({
target: contextName+"/service/getquestions/projectId/"+projectId,
});
3)
request.get("contextName+"/service/getquestions/projectId/"+projectId",{
handleAs: "json"
}).then(function(data){
dataStore = new ObjectStore({ objectStore:new Memory({ data: data.items }) });
});
इसके अलावा, बनाए गए स्टोर का उपयोग ड्रगिड तत्वों को आबाद करने के लिए किया जाएगा। किसी भी मदद की सराहना की है।
उत्तर:
उत्तर № 1 के लिए 1विजेट्स के साथ काम करते समय आपको अपना डेटा एक में लपेटना चाहिए dojo/store
। यह आपकी पहली विधि को छोड़ देता है।
@PaulR ने आपको बताया, दूसरा सबसे अच्छा तरीका है। लेकिन इसका मतलब यह भी है कि आपकी REST सेवा को कुछ नियमों का पालन करना चाहिए, जिन्हें आप उन पर पा सकते हैं निर्देशिका। यदि आप इन मानकों को पूरा नहीं कर सकते हैं, तो आप इसका विस्तार करना चुन सकते हैं dojo/store/JsonRest
मॉड्यूल ताकि आप इसे अनुरूप बना सकें या आप तीसरी विधि का उपयोग करें।
तीसरी विधि शायद सबसे आसान है यदि आपकी आरईएस सेवा आवश्यकताओं के अनुरूप नहीं है। आपको उपयोग करने की आवश्यकता नहीं है dojo/data/ObjectStore
Dojo के नए संस्करणों में एडेप्टर, क्योंकि सभी विजेट स्टोर का उपयोग करना चाहिए dojo/store
अब एपीआई (और पुराना नहीं है dojo/data
एपीआई)।
जवाब के लिए 0 № 2
दूसरा तरीका "सबसे अच्छा" है; दोजो है पर मॉडलिंग की डेटा (सर्वर-साइड) प्राप्त करने और हेरफेर करने के लिए स्टोर इंटरफ़ेस। अन्य तरीके गलत नहीं हो सकते हैं, लेकिन REST इंटरफ़ेस का उपयोग करने का "Dojo तरीका" नहीं है।
लक्ष्य पैरामीटर में बाकी शामिल होना चाहिएसमापन बिंदु (/ सेवा / getquestions / projectId)। जब आप किसी विशिष्ट प्रोजेक्ट के लिए जानकारी प्राप्त करना चाहते हैं, तो आप store.get (projectId) को उस स्टोर पर कॉल करेंगे, जो तब / सेवा / getquestions / projectId / projectid के लिए GET अनुरोध करेगा और उचित डेटा वापस करेगा।
उसी तरह से store.put (ऑब्जेक्ट) को कॉल करके एक अपडेट किया जा सकता है, जो / सेवा / getquestions / projectId / projectid पर एक PUT अनुरोध करेगा।
उम्मीद है की यह मदद करेगा। यदि नहीं, तो दुकानों पर अधिक जानकारी पाई जा सकती है यहाँ.