0

私は新しく、分散リソースを使用するアプリケーションを開発しています。

テンプレートとajaxアプリケーション(css、images、js、...)に関連するすべてを提供する「プレゼンテーションサーバー」と呼ばれるサーバーが1つあります。

生データを提供するためだけの2番目のサーバー(たとえば、「GET / resources / a-resource」を送信すると、「text / plain、'abc'」が返されます)、実際には、デバイス上に組み込みのRESTfulインターフェイスを開発しています。

最初のサーバーに接続し、テンプレートをダウンロードするクライアントがあります。次に、ajaxコードは2番目のサーバーから生データを取得し、テンプレートを使用してユーザーに提示します。

私はここでajaxにクロスドメインの問題があります。jqueryやscripttagなどの現在の解決策も知っています。

ここで私が本当に懸念しているのは、HTML5のクロスドキュメントメッセージング機能です。しかし、私が見つけたのは、2つのウィンドウ(ウィンドウ+ Iframeまたはウィンドウ+ウィンドウ)を開き、相互にメッセージを渡すことです。

XMLHttpRequestのように、「GET」を他の人に送信して返されたデータを処理するようなものではありません。

HTML5でのクロスドキュメントメッセージングが私の問題をどのように克服できるかを教えてください。

**要するに、ここでの私の苦痛は、XMLHttpRequestが本当に他のソースにGETを送信したが、Cross-document-messagingは(私が知っているように)送信しないことです。Cross-document-messagingを使用したHTML5がXMLHttpRequestとして実行できるかどうか迷いますGETを他のドメインに送信するかどうか

本当にありがとうございます。

4

1 に答える 1

0

しかし、私が見つけたのは、2 つのウィンドウ (ウィンドウ + Iframe またはウィンドウ + ウィンドウ) を開き、互いにメッセージをやり取りしていることです。

それは真実ではない。1 つのドキュメントに複数の iframe を含めることができ、それぞれが異なるドメインから来ており、それらすべてが相互にメッセージを投稿および受信できます。したがって、ページを完全に別のウィンドウに表示する必要はありません。

また、プレゼンテーションと API サーバーの両方を制御するため、Access-Control-Allow-OriginAPI サーバーのヘッダーを設定して、プレゼンテーション サーバーからのクライアントのみを受け入れることができます。これにより、通常どおり AJAX を使用できるようになります。

于 2011-06-24T04:38:56.143 に答える