首頁 >web前端 >js教程 >如何使用JavaScript對URL進行重新導向

如何使用JavaScript對URL進行重新導向

清浅
清浅原創
2019-01-16 15:23:054714瀏覽

window.location物件可以使用JavaScript操作將URL重定向到新的位置,一般情況下使用伺服器配置和http標頭屬性

如何使用JavaScript對URL進行重新導向

網頁中許多URL被重新導向到新位置,通常使用伺服器配置和HTTP標頭屬性。但是在許多情況下,可能需要使用JavaScript來重定向或導航到另一個URL

重定向的原因:

一般情況下希望重定向到新頁面或URL的原因有很多,例如:

更改了網域或URL結構

使用者已提交表單,但希望將它們指向序列中的下一頁

該頁面可能需要授權

從HTTP重定向到HTTPS

需要在單一頁面應用程式中觸發新頁面等等

window.location是物件管理瀏覽器加載的地址。操作位置物件是使用JavaScript管理頁面重新導向的方式。 location物件具有觸發JavaScript頁面重定向的屬性和方法

位置物件屬性:

hash:用於單一頁面應用程式和單一頁面網站

host:URL的網域

hostname:類似host

href:完整的URL

origin:URL的協定與網域

##pathname:原始後的URL slug或頁面

port:如果URL中包含連接埠

#協定:http,https,ftp,ftps等

這些屬性中的每一個都是字串,並且支援所有標準字串方法

位置物件方法有:

assign:將位置物件設定為新URL

reload:強制頁面使用相同的URL重新載入

#替換:觸發重定向

search:允許查詢queryString

#重定向到新位址

更改位址後,應執行301重定向。這是伺服器使用新位址發送HTTP狀態代碼301的位置

301狀態代碼告訴用戶代理:瀏覽器或搜尋引擎蜘蛛,有一個新位址

301重定向允許您保持流量,並希望您的搜尋引擎排名。

通常你會從伺服器上執行此操作。但有時這是不可能的,您需要使用JavaScript重定向到URL

實作程式碼:

window.location.assign("new target URL");
window.location.replace("new target URL");

最好的方法就是使用location.replace方法,它對於任何301重定向方案都很有用,包括何時需要從HTTP重定向到HTTPS。但使用JavaScript從HTTP重定向到HTTPS的更簡潔方法是以下程式碼片段:

 if (location.protocol !== "https:"){
location.replace(window.location.href.replace("http:", 
"https:"));}

window.location物件可以使用JavaScript操作以重定向到不同URL的屬性和方法。其中location.replace和location.assign非常有用,replace方法使會話歷史記錄保持乾淨,assign方法允許使用者透過URL歷史記錄進行回溯

以上是如何使用JavaScript對URL進行重新導向的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn