3

私はこの問題に夢中になっています。解決策または回避策があることを願っています。別のドメインのiframe内にキャンバスがあります(セキュリティ上の理由から)。このキャンバスには、Processing.js のアニメーション/描画が表示されます。キャンバスが同じドメインにある画像ファイルをロードできるようにする必要があります。

index.htmldomain.comiframeにあります

index.htmlsub.domain.comcanvasにあります

今、私は次のことを確信しています:

  1. キャンバスはリモート画像をロード/視覚化できますが、リモート画像データ (ピクセル) にはアクセスできません。
  2. キャンバスは、iframe (!?) で再生されない限り、同じドメインの画像ファイルに完全にアクセスできます。
  3. Access-Control-Allow-Origin ヘッダーを設定すると、他のドメインのファイルへのアクセスが許可されます。
  4. キャンバスは Access-Control-Allow-Origin ヘッダーをまったくサポートしていません/考慮していません。

これらすべてのセキュリティ制限を回避し、キャンバスを iframe で再生して画像ファイルをロードする方法はありますか?

4

1 に答える 1

2

私は自分の問題の解決策を見つけました (誰も答えていないことがわかりました)。実は私は何かを忘れていました...タグでsandbox属性を使用していましたが、それが問題でした。iframe削除すると、キャンバス内で、少なくとも Firefox と Chrome で画像にアクセスできるようになりました (IE はまだテストしていません)。いずれにせよ、このsandbox属性のサポートは依然として非常に貧弱であり、クロスドメインのシナリオではおそらくまったく役に立たない.

そう。画像がページの同じドメインにある場合にのみ、iframe 内の に画像をロードするときに、通常のiframe(sandboxパラメーターなしの) 場合に問題がないことを確認できます。canvascanvas

于 2013-08-16T20:29:23.243 に答える