2011-06-14 90 views
1

我無法使用document.referrer獲取大量推介鏈接。我不確定發生了什麼事。我將不勝感激,如果任何人有它的限制(如它的瀏覽器不支持一下)等document.referrer - 侷限性?

有沒有別的東西,我可以使用(在不同的語言也許)覆蓋更多的瀏覽器等任何信息?

+0

我記得有些瀏覽器不發送https網站的引用信息。 – Karolis 2011-06-14 15:34:20

回答

0

只是爲了確保你在同一頁上,你就知道如果有人直接在他們的Web瀏覽器中輸入一個URL,那麼document.referrer屬性是空的,對嗎?這就是說,你可能會對JavScript method to get all HTTP headers感興趣。如果您更喜歡PHP(因爲您使用的是該標籤),standard $_SERVER variable將提供可用的信息。請注意,該信息與報告Web瀏覽器和服務器一樣可靠,正如Kev所述。

1

我不會把任何信心document.referrer在JavaScript代碼。該值在客戶端請求標頭(Referer)中發送,因此可能會被欺騙和操縱。

欲瞭解更多信息請參閱我的回答對服務器端HTTP_REFERER服務器變量這樣一個問題:

How reliable is HTTP_REFERER

1

哪個瀏覽器,你在看?如果指網站通過window.open('some link')發送業務,而不是常規的<a>標籤,那麼IE將無法看到一個引用。它認爲這是一個新的請求,就像你直接去URL(在這種情況下沒有引用者)。 Firefox和Chrome不具有相同的問題。

這不只是一個javascript限制,HTTP_REFERRER也不會在這種特定情況下工作。