में jQuery AJAX अनुरोधों को खराब करता है। मैं एक आईफोन ऐप बना रहा हूं जो UIWebView को मेरे द्वारा बनाए गए वेब एप्लिकेशन पर इंगित करता है।उपयोगकर्ता इंटरैक्शन कभी-कभी UIWebView
वेब एप्लिकेशन डेटा आइटम्स के लिए लगातार वेब सेवा कॉल करता है जिसका उपयोग कैनवास पर नियंत्रण को एनिमेट करने के लिए किया जाता है। जेएसओएन के माध्यम से पैरामीटर पास करने और एक्सएमएल प्रतिक्रिया प्राप्त करने के लिए डेटा का उपयोग jQuery AJAX का उपयोग करता है।
मुझे लगता है कि UIWebView के साथ उपयोगकर्ता इंटरैक्शन होने पर, जावास्क्रिप्ट सेटटाइमआउट विधि अवरुद्ध है और यह बिल्कुल निष्पादित नहीं प्रतीत होता है। काफी उचित; इसके आसपास के तरीके हैं।
लेकिन बड़ी समस्या यह है कि उपयोगकर्ता इंटरैक्शन (ज़ूमिंग, पैनिंग इत्यादि) के बाद हर समय और फिर, AJAX वेब सेवा कॉल हर समय असफल हो जाएंगी और मैं एक कारण स्थापित नहीं कर सकता। भले ही वे बार-बार बने होते हैं, अगले कुछ मिनटों में से कोई भी वेब सेवा तक नहीं पहुंच पाएगा। यदि आप पूरी तरह से UIWebView को छोड़ देते हैं, तो वे तब तक असफल नहीं होंगे जब तक कि वेब सेवा चालू न हो और कनेक्टिविटी मौजूद हो।
क्या कोई सुझाव दे सकता है कि क्यों, और इस बारे में कैसे ठीक/काम करना है?
त्वरित अद्यतन: सफारी मोबाइल डीबगर के अनुसार, त्रुटि फ़ंक्शन में 'प्रतिक्रिया' ऑब्जेक्ट अपरिभाषित है। (यह काम करता है, उदाहरण के लिए, मैं यूआरएल को अमान्य बना देता हूं। इसके बाद इसे उद्देश्य-सी से [वेब व्यू स्ट्रिंगबायवैलुलेटिंग जावास्क्रिप्ट: @ "आखिरी एरर"] कहा जा सकता है, लेकिन इस 'यूईवेब्यूव्यू' त्रुटि को छूने के लिए अपवाद फेंकता है):
$.ajax({
type: "POST",
url: "WebService.asmx/GetValues",
async: true,
data: "{'pageVersionIndex': " + PageVersionIndex + " , 'timeStreamIndex': '" + TimeStream + "'}",
contentType: "application/json; charset=utf-8",
dataType: "xml",
success: function (response) { UpdateControls(response); },
error: function (response, status, errorthrown) {
calling = false;
lastError = response.statusText; //Throws exception
connectionInterrupted = true;
DataRoutine = window.setTimeout(DataService, dataFrequency); }
});
मुझे लगता है कि यह एक अच्छा विचार के लिए एक प्रासंगिक iPhone टैग स्थानापन्न होगा आपके द्वारा प्राप्त टैग में से एक ("वेब-एप्लिकेशन" शायद)। – Pointy
अच्छा विचार, करेंगे। –