Uploads a file to an existing bucket.
buckets
table permissions: noneobjects
table permissions: only insert
when you are uploading new files and select
, insert
and update
when you are upserting filesBlob
, File
or FormData
does not work as intended. Upload file using ArrayBuffer
from base64 file data instead, see example below.The file path, including the file name. Should be of the format `folder/subfolder/filename.png`. The bucket must already exist before attempting to upload.
The body of the file to be stored in the bucket.
const avatarFile = event.target.files[0]
const \{ data, error \} = await supabase
.storage
.from('avatars')
.upload('public/avatar1.png', avatarFile, \{
cacheControl: '3600',
upsert: false
\})
import \{ decode \} from 'base64-arraybuffer'
const \{ data, error \} = await supabase
.storage
.from('avatars')
.upload('public/avatar1.png', decode('base64FileData'), \{
contentType: 'image/png'
\})