как лучше всего преобразовать base64 в изображение и сохранить его локально? [закрыто]

Nov 29 2020

От клиента я получаю фотографию, которая преобразована в base64, теперь мне нужно декодировать base64 в изображение и сохранить его в локальной папке, как я могу это сделать?

Ответы

1 Brits Nov 29 2020 at 15:05

этот код не работает.

Ваш код не компилируется; base64.NewDecoderвозвращает io.Reader; вы не можете использовать его []byte()для преобразования в байтовый фрагмент ( ioutil.ReadAllмогли бы сделать это за вас). Однако в этом нет необходимости; вы можете скопировать в Readerфайл:

dec := base64.NewDecoder(base64.StdEncoding, strings.NewReader(photo[i+1:]))
f, err := os.Create("/var/www/upload/" + req.Title + ".png")
if err != nil {
    panic(err)
}
defer f.Close()
_, err = io.Copy(f, dec)
if err != nil {
    panic(err)
}