पर रीडायरेक्ट की एक स्ट्रिंग को हल करता है मुझे पता है कि रीडायरेक्ट स्वचालित रूप से पालन किए जाते हैं, और उस प्रक्रिया पर मेरे पास बहुत कम नियंत्रण नहीं है। यह ठीक है, लेकिन मुझे अभी भी बहुत दिलचस्पी है कि मेरा अनुरोध आखिरकार समाप्त हो गया है। क्या यह देखना संभव है कि मेरा अनुरोध आखिर में क्या होगा?यह निर्धारित करना कि jQuery .ajax()
मैं नहीं वापस आने वाले HTML पर भरोसा करना चाहता हूं ताकि मुझे यह बताने के लिए कि मैं कहां हूं।
नमूना कोड:
var originalURL = '/this/will/be/redirected';
$.ajax({
url: originalURL,
dataType: "html",
success: function(data, statusText, jqXHR) {
var endPointURL = insertMagicHere();
alert("Our query to " + original + " ended up at " + endPointURL + "!");
}
});
मैं इसके लिए jqXHR में चारों ओर देख रहा हूँ, लेकिन कोई किस्मत अब तक। (हालांकि, मैं इन सभी के लिए नया हूं, शायद मेरी नाक के ठीक नीचे)
क्या [यह मौजूदा स्टैक ओवरफ्लो प्रश्न] (http://stackoverflow.com/questions/4465547/capture-redirect-location-of-javascript-xmlhttprequest) इसे हल करने में आपकी सहायता करता है? अफसोस की बात है, ऐसा लगता है कि पुनर्निर्देशित स्थान पर कब्जा करने के लिए किसी प्रकार के सर्वर-साइड संशोधनों के बिना कोई रास्ता नहीं है। – OverZealous
सहमत हुए। एक्सएचआर स्पेक के अनुसार, एक रीडायरेक्ट चुपचाप संभाला जाता है। मेरे परीक्षण में, 302 'readystatechange' को भी ट्रिगर नहीं करता है! – JAAulde
संक्षिप्त उत्तर: अकेले jQuery में नहीं। पिछली बार मैंने कोशिश की, यहां तक कि सभी कार्यक्रम श्रोताओं को भी पंजीकृत करने से मुझे रीडायरेक्ट का पता लगाने की अनुमति नहीं मिली। आप शायद एक गैर-क्रॉस-ब्राउज़र समाधान चाहते हैं (यानी एक छोटी फ्लैश मूवी और संभवतः crossdomain.xml)। – yingted