l_short_url/func.go

32 lines
693 B
Go

package l_short_utl_request
import (
"encoding/json"
"math/rand/v2"
)
// 纯小写字母
func GenerateRandomLowerString(n int) string {
return GenerateRandomStringCustom(n, "abcdefghijklmnopqrstuvwxyz")
}
// GenerateRandomStringCustom 使用自定义字符集
func GenerateRandomStringCustom(n int, charset string) string {
result := make([]byte, n)
for i := range result {
result[i] = charset[rand.IntN(len(charset))]
}
return string(result)
}
// StructToMap 将结构体转换为 map[string]any
func StructToMap(v any) (map[string]any, error) {
b, err := json.Marshal(v)
if err != nil {
return nil, err
}
var m map[string]any
err = json.Unmarshal(b, &m)
return m, err
}