提问人:Klaudia 提问时间:10/25/2023 最后编辑:Klaudia 更新时间:10/25/2023 访问量:21
在 node.js formData 中将 blob 大小增加到 64 kb 以上
Increase blob size over 64 kb in node.js formData
问:
: )
我想通过 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 ...但也许我不喜欢它。
谢谢 克劳迪娅
答: 暂无答案
评论