這是跟我原來的問題here。答案建議在Firefox中使用,但至少Chrome和Safari(在iOS上)存在問題。重新調整後的後退按鈕
最初的問題是這樣的:在一個不相關的網站(比如Facebook)上,用戶可以創建鏈接,其中href的格式爲http // www.siteA.com /? http://www.siteB.com。目的是siteA解析查詢字符串並將瀏覽器重定向到siteB。這一切都很好。
然後,當用戶被重定向到siteB時,點擊瀏覽器上的後退按鈕,目標是他們應該返回到siteA而不是再次被重定向。
我之前提出的問題的答案是,在從siteA重定向的時候,siteA上的代碼檢查cookie - 如果它不存在,它會設置它並重定向。如果它在那裏,那麼不會重定向。爲了讓用戶能夠返回到原來的引用頁面並再次點擊相同的鏈接(並重新定向到siteB),還有人建議,如果cookie在siteA上找到,並且沒有重新定向,該cookie被刪除。
在Firefox上,所有的作品。現在的兩個問題是:Chrome瀏覽器(或其他)上的
- ,cookie的刪除操作不起作用,或者僅在用戶導航到其他站點後才起作用。刪除代碼只是簡單的JavaScript,過去設置與過期日期相同的cookie。這在實踐中可能是一個相對較小的問題,但找到解決方案會很好。
- 在iOS上的Safari上,siteA不在瀏覽器歷史記錄中。它似乎是iOS(也許是Safari一般),試圖避免循環問題)返回到重定向到第二個站點的頁面),方法是從歷史堆棧中省略重定向頁面。因此,按siteB上的後退按鈕會進入重定向頁面之前的頁面。這是一個重大問題。
看來有3種可能性 - 我想做的事情是不可能的,因爲這是一種安全風險;沒有crosss瀏覽器/平臺解決方案;或者我完全用錯誤的方法來接近目標。
固定點是:
- URL的形式(與含有所述第二URL查詢字符串);
- 無法訪問服務器(僅限於javascript/jquery)。
- 無法控制siteB(僅限siteA)。
我很感激任何建議和/或建議。
感謝