1

我正在创建一个 Figma 插件,它将帧转换为我想要保存到 Supabase 存储中的图像。我成功地从 Figma 导出了一个 Uint8array,并将其发送到我使用 Vercel 上托管的 Nextjs 制作的 API。

我正在努力的部分是将 Uint8array 转换为可以发送到 Supabase 存储的图像。

这是我到目前为止的代码:

const imageData = new Uint8Array(Object.values(req.body.data));
const blob = new Blob([imageData], { type: "image/jpg" });

const { data: image, error } = await supabase.storage
    .from("blocks")
    .upload("image.jpg", blob);

if (error) console.log(error);
if (!error) console.log(image);

我从 Supabase 得到的只是Error: No browser detected.. 我应该将一个文件对象添加到 .upload() 但我找不到将我的 Uint8array 转换为我可以发送到 Supabase 的文件对象的方法。

知道如何使它工作吗?

4

1 回答 1

0

这篇文章可能会对你有所帮助。相关代码看起来与您的方法相同:

const byteArray = new Uint8Array(byteNumbers);
const blob = new Blob([byteArray], {type: contentType});    
于 2021-10-14T16:00:50.333 回答