JavaScript: Replace an existing file
Policy permissions required:
buckets
permissions: none
objects
permissions: update
and select
For React Native, using either Blob
, File
or FormData
does not work as intended. Update file using ArrayBuffer
from base64 file data instead, see example below.
Examples Update file const avatarFile = event.target.files[0]
const \{ data, error \} = await supabase
.storage
.from('avatars')
.update('public/avatar1.png', avatarFile, \{
cacheControl: '3600',
upsert: false
\})
Update file using `ArrayBuffer` from base64 file data import \{decode\} from 'base64-arraybuffer'
const \{ data, error \} = await supabase
.storage
.from('avatars')
.update('public/avatar1.png', decode('base64FileData'), \{
contentType: 'image/png'
\})