Fix EntityTooSmall error from S3

This commit is contained in:
ekzyis 2024-10-16 03:48:40 +02:00
parent 04fd2ccbe4
commit 86612a527b

View File

@ -26,12 +26,18 @@ type GetSignedPOSTResponse struct {
func (c *Client) UploadImage(img *image.RGBA) (string, error) { func (c *Client) UploadImage(img *image.RGBA) (string, error) {
var ( var (
b = img.Bounds() b = img.Bounds()
width = b.Max.X width = b.Dx()
height = b.Max.Y height = b.Dy()
size = width * height
type_ = "image/png" type_ = "image/png"
size int
) )
var imgBuf bytes.Buffer
if err := png.Encode(&imgBuf, img); err != nil {
return "", err
}
size = imgBuf.Len()
// get signed URL for S3 upload // get signed URL for S3 upload
body := GqlBody{ body := GqlBody{
Query: ` Query: `
@ -99,9 +105,7 @@ func (c *Client) UploadImage(img *image.RGBA) (string, error) {
if fw, err = w.CreateFormFile("file", "image.png"); err != nil { if fw, err = w.CreateFormFile("file", "image.png"); err != nil {
return "", err return "", err
} }
if err = png.Encode(fw, img); err != nil { fw.Write(imgBuf.Bytes())
return "", err
}
if err = w.Close(); err != nil { if err = w.Close(); err != nil {
return "", err return "", err