5

iFrameHTML ドキュメントで要素を使用する場合、子ページはブラウザからのすべてのセッションおよび Cookie データとともにロードされます。

例えば:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Stack Overflow in an iFrame</title>
  </head>
  <body>
    <h1>Stack Overflow in an iFrame</h1>
    <iframe src="http://stackoverflow.com" width="640" height="480" />
  </body>
</html>

SO が実際に iFrame に読み込まれることを許可していないことは、しばらく無視してください。その場合、iFrame によって読み込まれた SO ページには、サインインしていると表示されます。

Cookie やセッション データなしで iFrame を使用するにはどうすればよいですか? (Chrome のシークレット モードのように)

なんで?

私の会社は、カスタマイズされた Web サイトを構築するための製品 (Web アプリ) を販売しています。ユーザーが認証されて Web サイトにアクセスすると、ユーザーがコンテンツを編集できるように、認証されたバージョンの UI が表示されます。認証されていないユーザーには、静的 Web サイトのみが表示されます。複数のブラウザーを使用したり、Cookie をクリアしたりすることは、ユーザーにとって合理的な期待ではないため、サイトのプレビューを iFrame で表示して、訪問者がどのように表示されるかを確認できるようにしたいと考えています。また、より小さな解像度の iFrame でサイトの「モバイル」プレビューを表示して、訪問者が電話で Web サイトにアクセスした場合にどのように表示されるかを確認したいと考えています。これらの iFrame は、ブラウザの Cookie やセッション データにアクセスせずに読み込む必要があるため、Chrome がシークレット モードで行うように、非認証モードで読み込みます。

どこから始めればいいのかわからないので、まだ何も試していません。HTML5がelementにいくつかのsandbox属性値をiFrame追加したことがわかりましたが、いずれもこの問題を解決していないようです。プロジェクトではすでに jQuery を使用しています。

注: 有効な HTML5 のみを使用することを目指しています

4

1 に答える 1

5

Webstack を完全に制御する場合、ユーザーを認証されていないものとして扱うプレビュー パラメーターを追加する方が簡単ではないでしょうか?

例えば:

<iframe src="http://stackoverflow.com?preview=1" width="640" height="480" />

プレビュー フラグが存在する場合は、承認チェックをバイパスします。

于 2013-09-05T16:53:08.317 に答える