ImagePicker base64 to Firebase storage problem

Hi! I recently found out from expo that it supports base64 in ImagePicker. Therefore I tried to use that to upload to firebase storage and firebase emits error message when I tried to upload.

Error message:
[FirebaseError: Firebase Storage: String does not match format ‘base64’: Invalid character found]

I’ve read solution about using aws s3 but I didn’t like it. I don’t even like it to set any middle router to request to upload file to firebase storage. I just want this work purely just in expo project.

I am really looking forward for firebase storage to working like a charm in expo.

So when will this be possible? Also why base64 from ImagePicker not working correctly?

2 Likes

Can we see your code for this? Also rather than just uploading, you could take the generated base64 string and make a data URI and display with an Image component to check.

Thank you for reply.

Here I pasted the code. Please tell me what am I doing wrong.

CODE:

RESULT:
Object {
“base64”: "/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCADhAOEDASIA
AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA
AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3
ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm
p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA
AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx
BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK
U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3
uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD+/iii
igAooooAKKKKACiiigAoori/HnxI+Hfwr8P3Hiv4meOvCfgDw3a5E+veMfEWkeHdJRwrMIhfaveW
kEk7hSIraN2uJnKxxRvIyrUVKtKjTnWrVIUqVOLnUq1JxhThBXvKc5yUYRVtZSdlrd6NvowmExeP
xNDBYHDYjGYvE1IUcNhcJQq4jE4itN8sKVChRjOrVqTekKcIynJ6JN6naUV+RPxa/wCC1f7Gvw/e
4sfAj+PfjXqkMslsW8E+GX0Xw3FPGZFZp/EXju78Li7si0eI7/w5p2u282+KS3MtuWmH54eP/wDg
vR8ctUaaP4W/Aj4YeC4t5SK48ca94s+Il00OZVMvk6HN8Mbe2uSvlOiO19bxSAhxcpuB+AzTxT4D
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
",
“cancelled”: false,
“height”: 225,
“uri”: “file:///data/user/0/host.exp.exponent/cache/ExperienceData/%2540dooboolab%252Fbookoo-expo/ImagePicker/3c11af53-05d2-46af-837d-32e48486b354.jpg”,
“width”: 225,
}

[FirebaseError: Firebase Storage: String does not match format ‘base64’: Invalid character found]

3 Likes

Hello. I have the same problem. Thank you for the reply.

1 Like

DId anybody tried this out?

How can I solve this problem??

Re: ImagePicker base64 to firebase storage problem <— on this post I suggested how to convert to a data URI to test

See this post for a solution: Expo and uploading image Blobs? - #12 by aaronksaunders

@aaronksaunders Thanks man. It solved.

you’re welcome - glad to help out

i also have same problem how u remove it

1 Like

Hi, if you don’t mind using cloudinary, I show how to upload and then get the uploaded url to save to firebase

Also you can try it snack but make sure you add your cloud_name and upload_preset

I was having the same problem. It’s not really a problem with the string, but just Firebase’s code trying to call the atob function, which does not exist in JavaScriptCore, and is not polyfilled by React-Native either.

This is the offending piece of code. As you can see, it is inside a try/catch which makes things worse, since we don’t get the real error details.

var bytes;
try {
  bytes = atob(string);
}
catch (e) {
  throw errorsExports.invalidFormat(format, 'Invalid character found');
}

I solved it by polyfilling the atob function, using base-64.

yarn add base-64

Then just make sure to do the polyfilling before calling putString.

// polyfills.js
import Base64 from 'base-64';
global.atob = Base64.encode;

Good luck!

4 Likes

When i add this code, the error does go but my putString just hangs. did you find this?

const snapshot = await ref.putString(
        base64EndodedImage.replace(/(?:\r\n|\r|\n)/g, ''),
        'data_url'
);