在 node.js formData 中将 blob 大小增加到 64 kb 以上

Increase blob size over 64 kb in node.js formData

提问人:Klaudia 提问时间:10/25/2023 最后编辑:Klaudia 更新时间:10/25/2023 访问量:21

问:

: )

我想通过 API 上传本地 PDF 文件。我遇到的问题是上传文件的最大大小为 64 kb。高于此值的任何内容都会引发错误。超出 ArrayBuffer。

我知道 Blob 函数最多只允许 64 kb。但是,我找不到任何其他方法。到目前为止,所有尝试都失败了......

这是我的简化代码:

let path = `/api/v1/projects/{idOfFolder}/files`;
let url = `https://${header.hostname}${path}`;

// Send binary data
        const rawData = readFileSync(localFilepath);
        console.log(`File size: ${rawData.length}`);
         const binary = new Blob([rawData], {
                     type: 'application/pdf'
         });

        const form = new FormData();
        form.set("type", "DOCUMENT");
        form.set("data", binary, "filename.pdf");

// Add the file
        const response = await fetch(url, {
            method: "POST",
            headers: {
                'X-CN-API-Key': secretKey
            },
            body: form
        });

        // Read the response result
        let interimResult = JSON.parse(await response.text());
        console.log(interimResult);

来自 Swagger 文档 (API):

{ type* 字符串 文件类型 ('FOLDER', 'DOCUMENT', 'IMAGE')

folderId 字符串 文件的文件夹 ID

数据字符串($binary) 内容数据(如果 type 不是 FOLDER,则为必填项)

名称字符串 要创建的文件(或文件夹)的名称。如果省略,将使用文件名。如果键入“FOLDER”,则为必填项 }

我希望,有人可以帮忙?除了 blob 之外,还有其他方法还是我必须添加一些东西?我正在寻找几天来解决这个问题。我已经辞职了,想在这里碰碰运气。

尝试了 ArrayBuffer,尝试了 Buffer.from ...但也许我不喜欢它。

谢谢 克劳迪娅

节点 .js 最大 blob

评论


答: 暂无答案