私は3つのサーバーを持っています:
サーバーA:メインアプリケーションホスト
サーバーB:メインアプリケーションでopenScoialガジェットとして開く別のアプリケーションのホスト
サーバーC:サーバーB上のアプリケーションのOpenSocial仕様ファイルのホスト
サーバーAのアプリケーションにアクセスしましたが、一部のjavaScriptファイル関数からアクセスが拒否されたというエラーが表示されます。
クロスドメインの問題のようですが、どんな助けでも歓迎します。
私は3つのサーバーを持っています:
サーバーA:メインアプリケーションホスト
サーバーB:メインアプリケーションでopenScoialガジェットとして開く別のアプリケーションのホスト
サーバーC:サーバーB上のアプリケーションのOpenSocial仕様ファイルのホスト
サーバーAのアプリケーションにアクセスしましたが、一部のjavaScriptファイル関数からアクセスが拒否されたというエラーが表示されます。
クロスドメインの問題のようですが、どんな助けでも歓迎します。
ガジェットで何らかの認証を使用していますか? xml がアプリケーションとは別のサーバーにあるのはなぜですか? それらは別のドメインにもありますか?JavaScript を読み込むためにどのような方法を使用していますか? どの OpenSocial Container 実装を使用していますか? ロックされたドメインを使用していますか? これまでに何を試しましたか?
一般的なアドバイスや情報を提供することはできますが、少なくとも上記の質問に答えなければ、問題の内容を正確に理解できません。
OpenSocial ガジェットは iframe 内でレンダリングされ、そのドメインはそれらをレンダリングする OpenSocial コンテナーによって選択されます。ガジェット xml のドメインでレンダリングされることはほとんどありません (私が知っているケースはありません)。多くの場合、このドメインは単に親ページ/OpenSocial コンテナのドメインになります。ただし、ロックされたドメインが有効になっている場合は、ガジェットは別の一意のドメインでレンダリングされ、親ページから何かにアクセスできないようになります。
クロスドメイン ポリシーは xhr リクエストをブロックします。これが、通常 xhr で行うすべての処理に gadgets.io.makeRequest を使用する必要がある理由ですが、makeRequest にはある種の認証 (通常は oauth) が必要です。ガジェットのサーバー (この例ではサーバーの C と B)。クロス オリジン ポリシーの影響を受けない JSONP を使用して、JavaScript / データをロードすることは引き続き可能です。