如何使用cloudflareworker[javascript]将文件上传到file.io



最近几天,我多次尝试使用cfworker将文件上传到file.io,但它返回错误,这是我的源代码:


async function handleRequest() {
const file = fetch('https://upload.wikimedia.org/wikipedia/commons/thumb/b/b1/02_start_book_creator.png/640px-02_start_book_creator.png');
let formData = new FormData();
formData.append("file", file);
var returned=fetch('https://file.io', {
method: 'POST',
body: formData
});

return returned
}
addEventListener("fetch", event => {
return event.respondWith(handleRequest())
})

错误是:

{"success":false,"error":400,"message":"Trouble uploading file"}

我和这个有什么关系?

遗憾的是,截至本文撰写之时,Cloudflare Workers不支持FileAPI,因此无法构造包含文件名和类型的FormData,这可能正是您所需要的。

然而,巧合的是,我们计划很快推出对此的支持——本周或下周。一旦我们完成了,您就可以构建包含File对象的FormData,如下所示:

let response = await fetch('https://upload.wikimedia.org/wikipedia/commons/thumb/b/b1/02_start_book_creator.png/640px-02_start_book_creator.png');
let data = await response.arrayBuffer();
let file = new File([data], "640px-02_start_book_creator.png", {type: "image/png"})
let formData = new FormData();
formData.append("file", file);

最新更新