バックエンドとして Firebase を使用して、ブックマーク サービス (Instapaper と考えてください) を実装しています。ほとんどの場合、うまく機能していますが、大きな問題が 1 つあります。
このサービスの中核部分は、ユーザーがブラウザで現在表示しているページをブックマークできるブックマークレットです (これも Instapaper のように: https://www.instapaper.com/save )。
これを実装するときに最初に遭遇した問題は、ユーザーが firebaseapp.com ページにログインしていても、ブックマークレットからの JavaScript が起動されたときに、そのユーザーが認証済みとして表示されないことでした。これはクロスドメインの問題が原因である可能性が最も高いと判断したため、次に iframe ベースのソリューションを実装しました。iframe の URL が私の firebaseapp.com サイトでホストされ、現在ログインしているユーザーが認証済みとして表示されるようにするという考えです。
これは Chrome と Firefox ではうまく機能しますが、Cookie と Web サイト データのセキュリティ設定が [常に許可する] ではなく [アクセスした Web サイトから許可する] に設定されている場合、Safari では失敗します (ユーザーにその設定を [常に許可する] に切り替えるように求めることはできません)。実用的)。
この問題の解決策はありますか? 新しいドメインでブックマークレットをクリックするたびにユーザーにログインを強制するのは、非常に不便です。私は基本的にこの時点でアイデアがありません(そして、Web開発側の深みから抜け出し始めています)。
助けてくれてありがとう!