最近、別の (関連する) 質問をしたところ、次のフォローアップの質問につながりました: 入力フォームのファイルの代わりにデータを送信する
jQuery.ajax() ドキュメント ( http://api.jquery.com/jQuery.ajax/ ) を読むと、受け入れられた dataTypes のリストに画像が含まれていないようです。
jQuery.get (または必要に応じて jQuery.ajax) を使用して画像を取得し、この画像を Blob に保存して、POST 要求で別のサーバーにアップロードしようとしています。現在、データ型の不一致が原因で、画像が破損しているようです (サイズのバイトの不一致など)。
これを実行するコードは次のとおりです (これは coffeescript にありますが、解析するのは難しくありません)。
handler = (data,status) ->
fd = new FormData
fd.append("file", new Blob([data], { "type" : "image/png" }))
jQuery.ajax {
url: target_url,
data: fd,
processData: false,
contentType: "multipart/form-data",
type: "POST",
complete: (xhr,status) ->
console.log xhr.status
console.log xhr.statusCode
console.log xhr.responseText
}
jQuery.get(image_source_url, null, handler)
代わりに、この画像をブロブとして取得するにはどうすればよいですか?