How to upload files from WeWeb to MinIO (S3-compatible)?

Hi everyone!

I’m working on a project in WeWeb and I need to allow users to upload files that will be stored in a MinIO bucket (S3-compatible).

Has anyone successfully set this up?

Hi Arnaldo, sorry for the delay!

I don’t think we’ve had experience with MinIO, did you manage to set it up?

Eu ja tenho o minio instalado sim.
o que nao consigo é enviar arquivos pelo weweb.

Yes, I already have MinIO installed.
What I’m not able to do is upload files through WeWeb.

Hey,

I’ve managed to achieve files uploading to S3 cloud storage (not MinIO, but still). Is there any specific question you have about the set up?

I have doubts about how to do this on the web. If you can help me I would be very grateful.

As for MinIO right here you can find all the docs about MinIO API. You can download it, feed all this to LLM and ask for a comprehensive setup guide for yourself3. .

For my purpose of S3 upload/download I use pre-signed URLs

My general setup looks like this:

  1. The workflow responds to file input “On change” trigger.

  2. The first “get presigned URL” make a POST-call to Supabase edge function which generates presigned URL and returns it in the response. Basically you can host your pre-signed URL generating script wherever you want (serverless function with any trusted cloud provider is okay).

NB!: make sure you’re passing a correct Content-Type in your request. It’s highly important.

  1. The second action sends the file “blob” directly from browser to S3 with the generated link. Content-Type for the current file should be the same.

  2. The last action just saves all the metadata of the file in my DB.

My setup is far from perfect. I should’ve been placed pre-signed URL generator script in Xano, but I don’t have subscription. And on the free tier Xano doesn’t give access to edge functions.

Just wanted to show you the idea.

P.S. Time delay action was used for testing purposes. It’s not necessary.

1 Like

Perfect.
Thanks very mutch