簡體   English   中英

有人對 Safari 和返回到您的 rails 應用程序的外部鏈接有疑問嗎?

[英]Anyone having issues with Safari and external links back to your rails app?

我有一個帶有魔法的 Rails 應用程序進行身份驗證。 我正在嘗試集成 Stripe 結帳,但我發現 Safari 存在問題。 適用於 Chrome 和 Firefox。

我可以使用取消 url 成功創建 Stripe 托管的結帳頁面,並且 stripe js 在同一個瀏覽器選項卡中將我發送到那里。 問題是當我單擊結帳頁面上的取消/返回鏈接時,它會返回到我的應用程序並將我推到登錄頁面,因為它找不到 session 並且 current_user 為零。

有趣的是,在登錄頁面上,如果我只是在地址欄中輸入取消 url,它會成功驗證我的身份,因此它必須找到原始會話/cookie。

有沒有人遇到過這個? 是緩存問題嗎? 我在日志和 js 控制台中都沒有看到任何錯誤。 就在服務器日志中...

Filter chain halted as:require_login rendered or redirected

這與 Stripe 無關,因為我創建了一個簡單的 test.html 頁面,位於另一台服務器和不同域上,並帶有指向取消 url 的鏈接。 結果相同。 我看到從 https 回到我的本地主機服務器以及在暫存環境 https -> https 中出現同樣的問題。

我還清除了我的 Safari 緩存、歷史記錄、cookies,重新啟動了瀏覽器和我的計算機並清除了 rails 會話表,但無濟於事。 我正在使用 activerecord session 商店,但也嘗試使用普通的 cookies。

任何提示/解決方案將不勝感激。 謝謝!

截至 2021 年 2 月 19 日,這顯然是 Safari 的一個已知錯誤。如果將其設置為 Lax,Safari 將不會發送 cookie。 Rails 6 默認值現在很寬松,沒有設置 < 6。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM