キャンバス上に描画するときに発生するクロスドメインの問題を解決する方法

不言
リリース: 2018-06-14 11:25:33
オリジナル
3895 人が閲覧しました

この記事は主に、キャンバス描画時に発生するクロスドメインの問題を詳細に説明する関連情報を紹介します。内容は非常に優れているので、参考として共有します。

キャンバスに外部リンク画像を描画すると、クロスドメインの問題が発生します。

例は次のとおりです:

    crossorigin 
ログイン後にコピー

ブラウザでこのページを開くと、次の問題が見つかります:

Uncaught DOMException: 'HTMLCanvasElement' で 'toDataURL' の実行に失敗しました: 汚染されたキャンバスが存在する可能性がありますエクスポートできません。

これは CORS ポリシーによって制限されており、クロスドメインの問題が発生します。画像を使用することはできますが、キャンバスが汚染されると、キャンバスのデータが汚染されます。たとえば、Canvas toBlob()、toDataURL()、または getImageData() メソッドを使用すると、上記のセキュリティ エラーがスローされます

これは厄介な問題ですが、幸いなことに img Crossorigin 属性が追加されました。この属性は、画像取得プロセス中に CORS 機能を有効にするかどうかを決定します:

    crossorigin 
ログイン後にコピー

上記 2 つの JS コードを比較すると、次の余分な行が見つかります:

image.setAttribute('crossorigin', 'anonymous');
ログイン後にコピー

とてもシンプルで、完璧な解決策です!

上記がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。

関連する推奨事項:

キャンバスの線のプロパティについて

キャンバスを使用して画像モザイクを実現する方法

以上がキャンバス上に描画するときに発生するクロスドメインの問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!