YouTubeは既存のサムネイルではないのに404を返すが、有効な画像データ(破損したビデオサムネイル)を返すので、Imageでチェックすることはできない画像リンクが404を返すが、まだ有効な画像であることを検出する方法
var img = new Image();
img.onload = function() { alert("found")};
img.onerror = function() { alert("not found") };
img.src = "http://img.youtube.com/vi/aaaa/1.jpg";
実行時に "found"と表示されます。画像データを実際に読み込むことができるかどうかを検出する方法はありますか?
リンクが標準のYouTube「壊れた動画」のサムネイル画像データを返すことが検出された場合にもいいです。
あなたはHTTPヘッダーでそれを行うことができますが、往復の費用がかかります。 http://stackoverflow.com/questions/220231/accessing-the-web-pages-http-headers-in-javascript ps; httpのレスポンスコード404とcontent-typeのimage/jpegで識別します。 –
@Marvin Smit:しかし、私はYouTubeに向けてAJAXリクエストをしなくてはなりませんか?なぜなら、現在のドキュメントのものではなく、YouTubeのイメージのヘッダーが必要だからです。また、私は元のポリシーの制限が同じため、YouTubeにajaxリクエストを送信できません。 – Tom
「アクセス制御許可元」ヘッダーを制御できる場合にのみ可能ですが、追加のラウンドトリップの隣にはオプションがない可能性がありますが、コストがかかる可能性があります。 –