【发布时间】:2014-12-10 07:56:20
【问题描述】:
我正在尝试在我的 ror 网站中实现上传文件功能。文件通过拖放上传到 div 上
我可以使用
访问文件信息e.originalEvent.dataTransfer.files[0].name
e.originalEvent.dataTransfer.files[0].size
用于上传文件
upload(e.originalEvent.dataTransfer.files[0]);
function upload(myfile) {
var fd = new FormData();
fd.append("name", myfile.name);
fd.append("fileToUpload", myfile);
var xhr = new XMLHttpRequest();
xhr.open("POST", "upload_main_file");
xhr.send(fd);
}
控制器代码是
def upload_main_file
render :text => params[:name]
end
路线是
post 'upload_material/upload_main_file'
但作为响应,我收到 422 Unprocessable Entity 错误
有什么问题
【问题讨论】:
-
您能否也将您的路线发布到
upload_main_file操作? -
你必须添加'CSRF-Token'。根据您的要求: xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content')
标签: ruby-on-rails file-upload xmlhttprequest