我正在尝试将文件上传到CherryPy服务器,但在服务器端未收到预期的对象类型:
HTML
...
<label class="btn btn-default btn-file">Browse
<input type="file" id="fpUploadSystemImage">
</label>
...
JS / JQUERY
$("#fpUploadConfig").change(function(event){
var fpUploadConfig = $("#fpUploadConfig")[0];
if ('files' in fpUploadConfig){
if(fpUploadConfig.files.length == 0){
console.log("uploadFiles.files.length == 0");
}
else{
var configFile = fpUploadConfig.files[0];
console.log(configFile);
uploadConfigFile(configFile);
}
}
});
function uploadSystemImageFile(file){
var fd = new FormData();
fd.append('systemImageFile', file);
jQuery.ajax({
type: 'POST',
url:"/uploadSystemImageFile",
data: fd,
processData: false,
contentType: false,
success: function(returnval) {
alert("New System File uploaded");
}
});
}
CherryPy对象内部的PYTON
@cherrypy.expose
@cherrypy.tools.json_out()
def uploadSystemImageFile(self, systemImageFile=None):
print("<<uploadSystemImageFile>>", type(systemImageFile))
我得到的答复是:
<<uploadSystemImageFile>> <class 'cherrypy._cpreqbody.Part'>
如何解压缩文件本身并保存到磁盘? 我想保持HTML部分不变,不使用“ FORM-> SUBMIT”来与HTML文档的其余部分保持一致。