这是我的python3烧瓶代码:
@app.route('/convert', methods = ['POST'])
def convert():
if('files[]' not in request.files):
return "No files chosen!"
files = request.files.getlist('files[]')
pdf_bytes = img2pdf.convert(files[0])
return send_file(FileWrapper(BytesIO(pdf_bytes)), mimetype = 'application/pdf')
这是我的 JavaScript Ajax 代码:
$.ajax
(
{
url : '/convert',
method : 'POST',
data : form_data,
cache : false,
contentType : false,
dataType : false,
processData : false,
responseType : 'blob',
error : function(jqXHR, textStatus, errorThrown)
{
console.log("ERROR!");
alert(textStatus.toString() + ' ' + errorThrown.toString());
},
success : function(res)
{
console.log("Response : \n", typeof res)
console.log(res)
var blob = new Blob([res], {type: "application/pdf"});
var url = window.URL.createObjectURL(blob);
var link = document.createElement('a');
document.body.appendChild(link);
link.style = "display: none";
link.href = url;
link.download = "pdf_output.pdf";
link.click();
}
}
)
'pdf_bytes' 保存转换后的 pdf 的二进制字符串格式。我希望能够将其作为 pdf 文件返回或按原样发送到 JavaScript,然后提取 pdf 并在那里下载。 我已经尝试了很多东西,但似乎没有任何效果,就像上面的结果导致下载一个空的 pdf。 请帮助我并提前致谢!