私が開発したWebサイトにhtml5uploderを完全に統合しましたが、IEで動作するようには設計されていませんでした。しかし、クライアントは現在、少なくともIE10のサポートを望んでいます。IEはFileAPIをサポートしていますが、ドラッグアンドドロップファイルアップローダーはどのIEブラウザーでも機能しません。
質問する
500 次
2 に答える
0
あなたのアプローチは私のために働きます。JS とサーバーから IE 固有の条件を削除します。IE10、IE11、Chrome で動作します。
Javascript
private onFileChange(e) {
var file = _.first(e.target.files);
if (!file) { return; }
var xhr = new XMLHttpRequest();
xhr.open("POST", '/upload', true);
xhr.setRequestHeader("Session-Id", 'secret');
var reader = new FileReader();
reader.onload = function(){
xhr.send(this.result);
};
reader.readAsDataURL(file);
}
Railsサーバー上
class UploadsController < ApplicationController
def create
file_id = DateTime.current.strftime('%Y_%m_%d_%H_%M_%S_%L') + '_' +
SecureRandom.hex
base64_content = request.body.read.to_s.split(',').last
file_content = Base64.decode64(base64_content)
File.open("tmp/#{file_id}", 'wb'){ |f| f.write(file_content) }
render json: { id: file_id }
end
end
于 2016-11-16T08:20:14.290 に答える