我得到一個的ressource這是可以通過兩個網址,例如:mygoodlookingurl.de/nice.jsf和mybadlookingurl.de/bad123454423523413413.jsf防止重定向循環的Javascript功能
我有打電話給差一次性瀏覽網址,之後我想重定向。目前我使用JQuery的document-ready()函數並調用cleanUrl(),它通過top.location.href =「mygoodlookingurl.de/nice.jsf」重定向。
不幸的是發生了一個無限循環,因爲在onload上加載url後,函數會被一次又一次地調用。該怎麼辦?
這裏是JS-代碼(我用了一招閱讀與創建錨標記的網址):
function cleanUrl(){
var url = document.url;
var a = "";
a = document.createElement('a');
a.href = url;
if (a.pathname == "/xxx/undefined"){
var cleanedUrl = "https://xxx.xxx.xx/xxx.jsf";
top.location.href = cleanedUrl;
}
}
在此先感謝。
UPDATE:currentUrl在第一次重定向後沒有更新,所以無限循環仍然發生。
function cleanUrl(){
var cleanedUrl = "https://xxx.xxx.xx:xxx.jsf";
var currentUrl = window.location.href;
if (currentUrl != cleanedUrl){
top.location.href = cleanedUrl;
}
}
什麼是'document.url'? – David
你不能使用服務器端代碼嗎? –