Developers January 18, 2021

Building functionality that allows users to upload images - what are some major pitfalls to watch out for?

Camilla Montonen @spimescape

Hey all!
As the title says, I'm evolving my colour search engine site to allow image uploads and I am wondering if folks have ever built something like this and what were the major lessons learnt. Would be happy to hear about your tech stack, challenges with performance, content moderation etc.

  1. 2

    Hi Camilla,
    Uploading images is my bread and butter for DropEvent. Current stack involves NodeJS server side, and having the browser upload directly to S3 for storage. This way the server isn't bogged down during the upload, and simply gets a POST sent when the image is uploaded with the Key and any other relevant info from the photo as needed.

    There are companies that sell content moderation. I handle it by having a flag that lets you turn on or off moderation, if you choose moderation then you get a notification of the upload but it won't appear until you approve it.

    Hope that helps!

    1. 1

      I haven't spent a lot of time with S3 (or similar) or with file upload in general but what about API key/secret? Isn't keeping that in the front-end exposing it to the public?

      1. 2

        Services like S3 uses signed urls that expire after a given amount of time. So the user can only upload the image to the location you specify whilst the signed url is still valid.

        1. 2

          Exactly. You can give an uploader minutes or an hour to upload to one specific location.

Recommended Posts