मुझे कोई समस्या है। मैंने एक आंतरिक लिंक का अनुरोध करने के लिए एक स्क्रिप्ट बनाई जो प्रतिक्रिया वापस भेजता है।jQuery JSON को सही ढंग से पार्स नहीं कर रहा है
jQuery.get(callUrl, function(data){
console.log(typeof data);
jQuery.each(data.items, function(i,item){
console.log(i);
});
},'json');
और प्रतिक्रिया सर्वर इस तरह दिखता वापस भेजता है कि: यह स्क्रिप्ट कैसा दिखता है
{"items":[
{
"src": "gallery_item_data_Jc4EaLP6vlwd_large.jpg",
"id": "83",
"gallery_id": "30",
"username": "admin"
}]
}
मेरे समस्या है जब मैं "डाटा" पार्स अपने प्रकार हमेशा स्ट्रिंग है। मुझे इसकी वस्तु होने की आवश्यकता है ताकि मैं इसे पूछ सकूं और इसे अपनी स्क्रिप्ट के साथ पार्स कर सकूं।
http://docs.jquery.com/Ajax/jQuery.getJSON
इस पृष्ठ पर अनुरोध और मेरे अनुरोध के साथ मुख्य अंतर यह है कि यह का उपयोग करता है: समस्या की तह तक पहुंचने के लिए, मैं jQuery के प्रलेखन पृष्ठ पर उदाहरण के लिए मेरी स्क्रिप्ट की तुलना की कोशिश की है getJSON विधि। जब मैंने अपने सर्वर पर यूआरएल के साथ इसका उपयोग करने की कोशिश की, तो मुझे कोई प्रतिक्रिया नहीं मिली है, इसलिए मुख्य कारण यह है कि मैंने विधि प्राप्त करने का विकल्प चुना, और रिटर्न प्रकार को "जेसन" के रूप में निर्दिष्ट किया।
एक और चीज मैंने कोशिश की: मैंने Flickr feed की जांच की है कि jQuery उदाहरण सामग्री-प्रकार शीर्षलेख को देखने के लिए उपयोग करता है जो यह वापस भेजता है, सोच रहा है कि मेरी फ़ीड में गलत हेडर था, और यह फ़्लिकर फ़ीड पर है:
Content-Type application/x-javascript; charset=utf-8
यह मेरी खुद की फ़ीड पर बिल्कुल वही हैडर है। तो मैं परेशान हूँ। क्या किसी को पता है कि ये क्यों हो रहा है?
getJSON काम नहीं कर रहा है अगर JSONP उस अंतराल पर समर्थित नहीं है जो वह मार रहा है। – singpolyma
यह सच है singpolyma, मैं अपने आंतरिक सर्वर पर JSONP कैसे समर्थित करूं? – picardo
मैंने इसे हल किया जब मैंने पैरों के साथ eval() और आस-पास की वापसी वस्तु का उपयोग किया। यह अब GetJSON के साथ भी काम कर रहा है। धन्यवाद दोस्तों! – picardo