33 lines
651 B
Go
33 lines
651 B
Go
package common
|
|
|
|
import (
|
|
"crypto/md5"
|
|
"encoding/base64"
|
|
"encoding/hex"
|
|
"fmt"
|
|
)
|
|
|
|
// Bytes2DataURI 将字节转换为 Data URI
|
|
func Bytes2DataURI(dataBytes []byte, mimeType string) string {
|
|
encoded := base64.StdEncoding.EncodeToString(dataBytes)
|
|
return fmt.Sprintf("data:%s;base64,%s", mimeType, encoded)
|
|
}
|
|
|
|
// CreateMD5 创建MD5哈希
|
|
func CreateMD5(s interface{}) string {
|
|
var data []byte
|
|
switch v := s.(type) {
|
|
case string:
|
|
data = []byte(v)
|
|
case []byte:
|
|
data = v
|
|
default:
|
|
data = []byte(fmt.Sprintf("%v", v))
|
|
}
|
|
|
|
hasher := md5.New()
|
|
hasher.Write(data)
|
|
return hex.EncodeToString(hasher.Sum(nil))
|
|
}
|
|
|