Xmlhttprequest रिटर्न एक्सेस केवल आईई पर अस्वीकार कर दिया गया है

मैं नीचे दिए गए कोड का उपयोग कर रहा हूं और यह फ़ायरफ़ॉक्स और क्रोम पर ठीक काम कर रहा है, लेकिन आईई 7 पर यह कहता है कि एक्सेस अस्वीकार कर दी गई है। मैंने इस मुद्दे पर बहुत सी चीजें पढ़ी हैं लेकिन अभी भी होती है।

Test.GetContent = function (x, params, callback, optional) {
    var result = "";
    var url = "http://" + this.ip + "/test/getstuff.php?";
    var req = this.CreateXMLHTTPObject();
    if (!req)
        return "Browser Incompatibility";

    req.open("POST", url, true);
    req.setRequestHeader('Content-type', 'application/json');
    req.onreadystatechange = function() {
        if (req.readyState != 4) return;
        if (req.status != 200 && req.status != 304) {

            return;
        }
        callback.call(Test, JSON.parse(req.responseText), optional);
    }
    if (req.readyState == 4) return;
    req.send(JSON.stringify(params));
}
0
हां यह क्रॉस डोमेन है लेकिन यह IE8,9 और 10 पर भी हो रहा है
जोड़ा लेखक nhenrique, स्रोत
यह क्रॉस-डोमेन नहीं होगा, है ना?
जोड़ा लेखक Rocket Hazmat, स्रोत
यदि यह क्रॉस-उत्पत्ति है, तो IE7 CORS का समर्थन नहीं करता
जोड़ा लेखक Jonathan Lonowski, स्रोत

1 उत्तर

आईई अलग है, मुझे लगता है कि आपको इसे अलग-अलग संभालना होगा। यह xmlhttp चर को परिभाषित करता है इससे कोई फर्क नहीं पड़ता कि कौन सा ब्राउज़र इसे चलाता है।

var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
    xmlhttp=new XMLHttpRequest();
}
else {// code for IE6, IE5
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
0
जोड़ा
हाँ यह तरीका है। CreateXMLHTTPObject() सही चर वापस लौटें, मैं XMLHttpRequest, Microsoft.XMLHTTP और इसी तरह के लिए प्रयास कर रहा हूं। इसके बारे में बात यह है कि यह यानी 8, 9 और 10 के साथ भी हो रहा है
जोड़ा लेखक nhenrique, स्रोत
यह पोस्ट में शामिल नहीं है, लेकिन मुझे लगता है कि यह संभवतः this.CreateXMLHTTPObject() पहले से ही करने का प्रयास कर रहा है।
जोड़ा लेखक Jonathan Lonowski, स्रोत