Supabase太棒了!!我正在尝试使用对X1 M0 N1 X的POST请求将一个图像上传到公共桶。困难的是我只有base64编码的图像字符串,我不能使一个成功的请求以上的端点。我已经尝试了无数次的迭代设置内容类型,但没有运气。我试图从Appsmith上传我的图像,它提供了base64格式的图像,从那里我将不得不击中上述端点。请帮帮我。
fcg9iug31#
我很高兴能够找到另一个像我一样的Supbase球迷!我知道你的痛苦。你能尝试this技术将base 64字符串转换为blob对象吗?
const byteCharacters = atob(b64Data); const byteNumbers = new Array(byteCharacters.length); for (let i = 0; i < byteCharacters.length; i++) { byteNumbers[i] = byteCharacters.charCodeAt(i); } const byteArray = new Uint8Array(byteNumbers); const blob = new Blob([byteArray], {type: contentType});
末尾的blob变量是可以用来上载到Supabase的变量。另外,你有没有考虑过使用Supabase-js SDK?它会让你的生活变得更容易,因为它们提供了更好的API来与Supabase交互。您可以在这里获得supabase-js包:https://www.npmjs.com/package/@supabase/supabase-js您可以在这里找到一些示例代码:https://supabase.io/docs/reference/javascript/storage-from-upload在您的情况下,您可以执行以下操作来上传文件:
const { data, error } = await supabase .storage .from('avatars') .upload('public/sample.png', blob, { cacheControl: 3600, upsert: false })
1条答案
按热度按时间fcg9iug31#
我很高兴能够找到另一个像我一样的Supbase球迷!
我知道你的痛苦。你能尝试this技术将base 64字符串转换为blob对象吗?
末尾的blob变量是可以用来上载到Supabase的变量。
另外,你有没有考虑过使用Supabase-js SDK?它会让你的生活变得更容易,因为它们提供了更好的API来与Supabase交互。
您可以在这里获得supabase-js包:https://www.npmjs.com/package/@supabase/supabase-js
您可以在这里找到一些示例代码:https://supabase.io/docs/reference/javascript/storage-from-upload
在您的情况下,您可以执行以下操作来上传文件: