XMLHttpRequestを使用してバイナリ形式でjpegイメージをロードしています(そのようにする必要があります)。これはbase64でエンコードされていません。バイナリイメージがサーバからイメージにロードされ、javacriptで表示されます
javascriptを使用してimgオブジェクトにすることはできますか?
おかげXMLHttpRequest
の文字エンコーディングがsomething that won't change the binary dataに設定されている、またはあなたがset the response typeてきた、あなたはその後、btoa
(BASE64でそれを入れて、あなたがデータURIとして割り当てるせること)を介して.responseText
を実行できる場合
これはインラインイメージと呼ばれます。 IE8は32KB未満のインラインイメージしかサポートしていないことに注意してください(ベース64エンコードデータの場合、ソースイメージは24KB未満でなければなりません)。IE7以前はインラインイメージを全くサポートしていません)。 –
それを試しましたが、 'btoa(xhr.responseText)'は 'Error:INVALID_CHARACTER_ERR:DOM Exception 5'を返し続けます。なぜこれが起こるのか分かりません。 IE7/IE8の場合...私はそれに対処するためにFlashオブジェクトを作成しなければならないでしょう – Marc
@Marcなぜなら 'btoa'にはいくつかの[バグ]があるからです(https://bugzilla.mozilla.org/show_bug.cgi? id = 213047)(同じ/同様のことがウェブキットにも当てはまります)、_ArrayBuffer_ - > 'Blob' - > _URL.createObjectURL_メソッドを使って答えを更新します。これは私の意見では_FileReader_よりも少し良いですが、 _btoa_として –