Netsuite SuiteScript我可以将一个大小超过10Mb的文件内容转换为文件的任何方法

Netsuite SuiteScript我可以将一个大小超过10Mb的文件内容转换为文件的任何方法,netsuite,suitescript,suitescript2.0,Netsuite,Suitescript,Suitescript2.0,我有两个SuiteScript文件, 一个用于SuiteLet类型,另一个用于RestLet类型, 我使用Suitelet类型的文件调用RestLet服务,并获取文件内容, 最后,我将文件写回客户机 它工作得很好,但我对它的效率并不满意, 因为我必须将文件保存到NetSuite文件柜中,然后加载并删除它。 下面是我的2段代码 // SuiteLet const createZipRestletId = 666; const response = generateTbaCredentials(cr

我有两个SuiteScript文件, 一个用于SuiteLet类型,另一个用于RestLet类型, 我使用Suitelet类型的文件调用RestLet服务,并获取文件内容, 最后,我将文件写回客户机

它工作得很好,但我对它的效率并不满意, 因为我必须将文件保存到NetSuite文件柜中,然后加载并删除它。 下面是我的2段代码

// SuiteLet
const createZipRestletId = 666;
const response = generateTbaCredentials(createZipRestletId, curRecId);
const resBodyObj = JSON.parse(response.body);
if (!resBodyObj?.['error']) {
    exceptionPageFlag = false;
    const resBodyContent = resBodyObj.content; // zipFileId
    const preSavedFile = file.load({id: resBodyContent, });
    scriptContext.response.writeFile({file: preSavedFile, isInline: false, });

    file.delete({id: resBodyContent, });
}
欢迎任何想法/解决方案, 提前谢谢

// RestLet
if(!!fileIdObj) {

    const fileIdArr = Object.keys(fileIdObj);
    const archiver = compress.createArchiver();
    fileIdArr.forEach(fileId => {
        if (!!fileId) {
            const loadedFile = file.load({id: fileId, });
            archiver.add({
                file: loadedFile
            });
        }
    });
    const zipFile = archiver.archive({
        name: `${toNum}.zip`
    });
    const tempStoreFolderId = 666; // dragAndDrop
    zipFile.folder = tempStoreFolderId;
    const zipFileId = zipFile.save();

    // const fileZipPrepareFinishedUsage = curScript.getRemainingUsage();
    // log.debug('fileZipPrepareFinishedUsage', fileZipPrepareFinishedUsage);//4465, 46file
    const response = {};
    response['info'] = zipFile;
    response['content'] = zipFileId;

    return response;
}