3
HTTP POSTリクエストからオーディオデータを取得してAndroidデバイスから再生しようとしています。Cordova - CSPがメディアブロブの読み込みを拒否します
var xhr = new XMLHttpRequest();
xhr.open('POST', encodeURI(myURLString), true);
xhr.responseType = 'blob';
xhr.onload = function(evt) {
var blob = new Blob([xhr.response], {type: 'audio/wav'});
var audio = new Audio();
audio.src = URL.createObjectURL(blob);
audio.play();
};
xhr.send(myData);
私はそれを実行すると、私は次のエラーを取得する:
Refused to load media from 'blob:file:///d181cef8-136d-4dab-b5c6-598a0481755c'
because it violates the following Content Security Policy directive: "media-src *".
私はこのファイルがあることをできるようにするには、このディレクティブを設定するかどうかはわかりませんこれは、その操作を処理するコードです演奏され、私はこれを動作させることができません。
アイデア?前もって感謝します!
ディレクティブをすべて削除すると動作しますが、正しい解決策のようには見えません。それは...ですか? –
'blob:'修飾子を 'media-src * blob:'のようなmedia-srcディレクティブに追加する必要があるかもしれません。 [さらに読む](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy/media-src) – Phonolog
@Phonolog Perfect!リンクありがとう。あなたがそれを1つとして投稿すれば、私はこれを答えとして受け入れます。 –