9

ここでは、iframeメソッドを使用してFacebookアプリケーションを構築しています。アプリケーションが機能するには、iframe内からCookieを設定する必要があります。

SafariではデフォルトでサードパーティのCookieが無効になっているため、現在、ブラウザ全体をサーバーにリダイレクトし、セッションの追跡に必要なCookieを設定してから、Facebookアプリケーションページに再度リダイレクトしています。

この方法は機能し、うまく機能します。サードパーティのCookieを手動で無効にしているFirefoxを使用している人がいない限り、FirefoxはデフォルトでサードパーティのCookieを有効にします。Safariは機能するため、iframeからCookieを設定することはできませんが、Cookieを読み取ることはできます。一方、FirefoxではCookieを読み取れないため、不可能になります。

サードパーティのCookieが無効になっている場合に、Firefoxに外部サーバーのiframeにCookieを送信させる方法はありますか?

4

4 に答える 4

9

サードパーティのCookieが無効になっている場合に、Firefoxに外部サーバーのiframeにCookieを送信させる方法はありますか?

いいえ、それは良いことです。サードパーティのCookieを無効にすると、無効になります。

于 2009-01-21T16:30:41.567 に答える
5

1 つの手法は、JavaScript を使用して、最初のページの読み込み時に非表示の iframe に対してバックグラウンドで POST を実行することです。POST 応答が正常に返されるとすぐに、Cookie を設定できるようになります。これにより、ユーザー エクスペリエンスに影響を与える必要がなくなります (インタラクションを強制するインタースティシャルは別の手法です)。ここにいくつかの考えとサンプルコードがあります: http://gist.github.com/586182

于 2010-09-22T10:44:41.913 に答える
2

サードパーティの Cookie のチェックを外すと、サードパーティの Cookie を送信したり受け入れたりしません。でも; チェックボックスは「サードパーティのCookieを受け入れる」であるため、新しいCookieを受け入れないだけで、Cookieを/送信/する必要があることは間違いないようです.

于 2009-11-04T23:15:10.530 に答える
0

ブラウザをターゲットにするのではなく、動作をターゲットにします。

Cookieを設定し、次のページでJSを使用してCookieをロードチェックします。それらがない場合は、別の方法で設定します。

(そして、Cookieを持たないユーザーが無限ループに陥らないように注意してください)

編集:うーん、FFがそれらを読み取れない場合は、問題になる可能性があります。このシステムを介してみんなを送るのはどうですか?

于 2009-01-21T15:09:21.203 に答える