2012-03-09 14 views
10

क्या यह पता लगाने का कोई तरीका है कि कोई वेबपृष्ठ मुझे दूसरे URL पर रीडायरेक्ट करने जा रहा है, इसके यूआरएल को जानना? मेरा मतलब है जब आप टेक्स्ट फ़ील्ड में यूआरएल टाइप करते हैं और स्क्रिप्ट इसे 3xx रीडायरेक्शन के लिए जांचती है।जावास्क्रिप्ट के साथ एक रीडायरेक्ट का पता लगाने - कैसे?

+0

एक घटना 'onbeforeunload' है, क्या आप चाहते हैं? – fardjad

+0

@fardjad शायद मैंने इसे सही ढंग से समझाया नहीं है। मुझे कुछ ऐसा चाहिए [यह] (http://www.internetofficer.com/seo-tool/redirect-check/), लेकिन जावास्क्रिप्ट के साथ, php – burtek

+0

नहीं यदि यह समान मूल नीति को पूरा करता है तो आपको शायद यह प्राप्त करने में सक्षम होना चाहिए एक्सएचआर ऑब्जेक्ट के माध्यम से 302 हेडर। – zzzzBov

उत्तर

3

हां, आप इसे जावास्क्रिप्ट में आसानी से कर सकते हैं।

var xhr = new XMLHttpRequest(); 
xhr.onload = function() { 
    if (this.status < 400 && this.status >= 300) { 
    alert('this redirects to ' + this.getResponseHeader("Location")); 
    } else { 
    alert('doesn\'t redirect '); 
    } 
} 
xhr.open('HEAD', '/my/location', true); 
xhr.send(); 

दुर्भाग्य से, अपने खुद के सर्वर पर यह केवल काम करता है, जब तक आप CORS के साथ एक सर्वर हिट की स्थापना: यह कुछ इस तरह दिखाई चाहते हैं। यदि आप किसी भी डोमेन पर समान रूप से काम करना चाहते हैं, तो आपको इसे सर्वर-साइड करना होगा।

+0

सबसे अच्छा समाधान लगता है – burtek

संबंधित मुद्दे