Javascript 是否将arraybuffer转换为fiileList?
我收到来自API的arraybuffer对附加PDF文档的响应,我想在编辑模式下预览PDF文档,并发送与文件列表相同的PDF(例如,当我们使用上载时如何获取文件列表对象)。我已成功地将数组缓冲区转换为blob和预览,但无法形成文件列表将其发送回apiJavascript 是否将arraybuffer转换为fiileList?,javascript,angular,typescript,blob,arraybuffer,Javascript,Angular,Typescript,Blob,Arraybuffer,我收到来自API的arraybuffer对附加PDF文档的响应,我想在编辑模式下预览PDF文档,并发送与文件列表相同的PDF(例如,当我们使用上载时如何获取文件列表对象)。我已成功地将数组缓冲区转换为blob和预览,但无法形成文件列表将其发送回api arrayBufferToBase64(buffer) { let binary = ''; const bytes = new Uint8Array(buffer); const len = bytes.byteLengt
arrayBufferToBase64(buffer) {
let binary = '';
const bytes = new Uint8Array(buffer);
const len = bytes.byteLength;
for (let i = 0; i < len; i++) {
binary += String.fromCharCode(bytes[i]);
}
const file = window.btoa(binary);
const byteCharacters = atob(file);
const byteArrays = [];
for (let offset = 0; offset < byteCharacters.length; offset += 512) {
const slice = byteCharacters.slice(offset, offset + 512),
byteNumbers = new Array(slice.length);
for (let i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
const byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
const blob = new Blob(byteArrays, { type: 'application/pdf' });
const objectURL = URL.createObjectURL(blob);
this.pdfUrl = this.sanitizer.bypassSecurityTrustResourceUrl(objectURL);
}
File {
lastModified: 1573560008286
lastModifiedDate: Tue Nov 12 2019 17:30:08 GMT+0530 (India Standard Time) {}
name: "bill.pdf"
size: 67599
type: "application/pdf"
webkitRelativePath: ""
}