首頁 >web前端 >js教程 >如何在 JavaScript 中可靠地取得先前的 URL?

如何在 JavaScript 中可靠地取得先前的 URL?

DDD
DDD原創
2024-11-28 12:59:11320瀏覽

How Can I Reliably Get the Previous URL in JavaScript?

在 JavaScript 中確定上一個 URL

在 JavaScript 中,獲取用戶訪問過的上一個 URL 可能很棘手。但是,可以採用多種方法。

使用 document.referrer:

如果使用者導覽到目前頁面,則 document.referrer 屬性提供上一頁的 URL透過超連結的頁面。可以透過以下方式取得:

console.log("Previous URL: " + document.referrer);

document.referrer的限制:

  • 使用者直接在位址中輸入URL是不可靠的欄或欄提交表單。
  • 在某些具有安全意識的瀏覽器中無法訪問,例如Safari。

使用 window.history 進行歷史記錄管理:

window.history 允許操作瀏覽器的歷史記錄,但不直接提供對 URL 的存取。但是,history.state 物件可用於儲存自訂URL 屬性:

history.state = { prevUrl: location.href };

然後,您可以在上一頁中擷取它:

const prevUrl = history.state && history.state.prevUrl;

其他方法:

  • Cookie:設定儲存前一個 URL 的 cookie 是一個可行的選擇,但需要額外的伺服器端邏輯。
  • 參數追蹤:將參數附加到包含前一個 URL 的目前 URL,但是此方法如果使用者頻繁導航,可能會使 URL 變得混亂。

安全注意事項:

提供對先前 URL 的存取會引發安全和隱私問題,因為它可能允許惡意網站追蹤使用者瀏覽歷史記錄。因此,瀏覽器對 URL 可訪問性實施了限制。

以上是如何在 JavaScript 中可靠地取得先前的 URL?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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