に保存します。デコードし、幅と高さを確認してからファイルに保存する必要があるbase64エンコードされた文字列があります。しかし、私は一貫して壊れた画像ファイルを保存してきました。Go - base64の文字列をファイル
package server
import (
"encoding/base64"
"errors"
"io"
"os"
"strings"
"image"
_ "image/gif"
_ "image/jpeg"
_ "image/png"
)
var (
ErrBucket = errors.New("Invalid bucket!")
ErrSize = errors.New("Invalid size!")
ErrInvalidImage = errors.New("Invalid image!")
)
func saveImageToDisk(fileNameBase, data, bucket string) (string, error) {
idx := strings.Index(data, ";base64,")
if idx < 0 {
return "", ErrInvalidImage
}
reader := base64.NewDecoder(base64.StdEncoding, strings.NewReader(data[idx+8:]))
imgCfg, fmt, err := image.DecodeConfig(reader)
if err != nil {
return "", err
}
if imgCfg.Width != 750 || imgCfg.Height != 685 {
return "", ErrSize
}
fileName := fileNameBase + "." + fmt
f, err := os.Create(fileName)
if err != nil {
return "", err
}
_, err = io.Copy(f, reader)
f.Close()
return fileName, err
}
ファイルを保存します。私がテストしているbase64は、オンラインのbase64から画像コンバータまで有効です。どんな助け?
http://pastebin.com/u18eRv7dここで私は(FUNCのデータ)を使用していbase64文字列だ
読者は、読んだときにその内容を「使い切っていませんか? – Siguza