【发布时间】:2021-11-15 00:10:23
【问题描述】:
var uploadData = new FormData();
uploadData.append('myFile', pdfData, fileName);
pdfData 来自另一台服务器,并在控制台上输出以下内容(摘录):
%PDF-1.3 %¿÷¢þ 1 0 对象 > 结束对象 2 0 个对象
所以它是二进制字符串 (?) 格式的 PDF 文件。
执行此代码会导致以下异常:
Uncaught TypeError: Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'.
尝试这样做时:
uploadData.append('myFile', new Blob([pdfData], {type: 'application/pdf'}, fileName);
请求通过,但我在服务器端收到错误:
java.io.IOException: java.util.zip.DataFormatException: invalid code lengths set
所以我认为 PDF 发送不正确。
如何正确编码pdfData?
【问题讨论】:
标签: javascript xmlhttprequest blob