0

I'm asking user on registration to upload an avatar images but, some images takes much time to be uploaded as it's very big or something, is there any way to reduce images size before send them with post request, i'm using nuxtjs.

kissu
  • 40,416
  • 14
  • 65
  • 133
Abdelrhman Gad
  • 195
  • 2
  • 11

1 Answers1

2

Not really.
You could make a validation on the size and do not allow them if it's above a specific threshold.
Don't do image compression on client-side tho.
There are some ugly solutions here tho, like converting your image into a canvas and back, you will definitively get some sub-par image quality but it may be okay in your case?

This answer is still relevant too.

kissu
  • 40,416
  • 14
  • 65
  • 133
  • I am using this: https://www.npmjs.com/package/browser-image-compression it works quite well. Why is it bad to do in client-side? – Simone May 15 '23 at 11:20
  • 1
    @Simone your package can be used in a web worker so that solves some of the issues aka the fact that doing some heavy lifting computation (compression) is heavy on the CPU of your visitor's machine, hence why such things need to be done on the server usually. Client-side is by default not meant for such things because of the time/charge/capabilities. – kissu May 15 '23 at 15:07