我有一個登錄頁面,來自不同域的用戶被重定向到此頁面以實現SSO。我使用referrer HTTP Header字段來知道用戶來自哪裏,因此在成功登錄時,我將他/她返回到他/她的原始域。 但有時我的推薦人沒有設置,而其他時間設置。爲什麼?當瀏覽器在HTTP請求標頭中設置「引用者」時?
4
A
回答
11
用戶可以使用不同的方法來您的網頁:
- 通過輸入你的網頁的網址,直接在瀏覽器中
- 器的地址欄中通過點擊其他網站 一個鏈接到你的網站
- 通過重裝當前頁面
- 通過網站上的表單提交(發送POST請求回到你的網站)
- 通過,通過瀏覽器的前進/後退按鈕導航。
- 通過將前一頁重定向到當前頁面。
現在,瀏覽器確實在設置引用標頭字段的方式和時間上有所不同。但作爲一般規則,您可以確保在鏈接點擊或提交表單(發佈請求)時,他們設置引薦來源字段。此外,如果您通過重定向或鏈接來到當前頁面,瀏覽器仍會保留F5上的引用標頭(頁面重新加載)。
如果您看到您的引薦來源字段爲空,那是因爲有人知道您的登錄頁面網址並將其直接輸入到地址欄中,或者有人已將其添加書籤,因此會發送GET請求。
一般來說,你不應該總是期望引用者字段,因爲它在你的控制之外。您應該使用cookie或查詢字符串,因爲它們在您的控制之下。
4
另一件事是,某些用戶可能在其瀏覽器中將referer選項設置爲禁用,作爲瀏覽器安全設置的一部分。
相關問題
- 1. 將http頭設置爲由瀏覽器生成的請求?
- 2. 從瀏覽器發送http請求時缺少授權標頭
- 3. HTTP請求的瀏覽器
- 4. NSURL請求設置HTTP標頭
- 5. 設置http請求消息標頭ios
- 6. 強制瀏覽器發送一些HTTP請求標頭
- 7. 在驅動器請求中設置HTTP標頭
- 8. 當HTTP請求使用不同的瀏覽器頭時會發生什麼?
- 9. 未使用瀏覽器的HTTP請求
- 10. 「請求者」的HTTP頭
- 11. 爲Intent設置瀏覽器標頭
- 12. 請求HTTP標頭
- 13. HTTP請求標頭
- 14. 查看和設置Safari瀏覽器/ Chrome的HTTP標頭
- 15. 在ajax中設置請求標頭
- 16. 在Node.js中設置請求標頭
- 17. 在java中設置請求標頭
- 18. 在硒中設置請求標頭
- 19. 在URL中設置請求標頭?
- 20. 在JavaScript中設置請求標頭
- 21. 我可以同時設置請求的引用標頭嗎?
- 22. StringContentProvider是否在HTTP請求中設置Content-Type標頭?
- 23. 在HTTP請求標頭中設置LTPA令牌
- 24. 在Angular2 HTTP POST中設置JSON請求標頭
- 25. 在Flask測試中爲所有請求設置HTTP標頭
- 26. 設置標頭時HTTParty請求失敗
- 27. 在Javascript中通過瀏覽器處理HTTP請求超時
- 28. 在netty中發出HTTP請求時填充請求標頭值
- 29. 瀏覽器編碼HTTP請求
- 30. Http請求多瀏覽器麻煩
好點。感謝 –
@Saeed,「你可以肯定」,除非用戶只是在瀏覽器中禁用了該功能。 – Qtax