代码拉取完成,页面将自动刷新
同步操作将从 进击的皇虫/CloudStore 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package CloudStore
import (
"bytes"
"compress/gzip"
"crypto/md5"
"encoding/hex"
"encoding/json"
"io/ioutil"
"os"
"strings"
)
var (
sevenDays int64 = 7 * 24 * 3600
)
// 绝对路径,abs => absolute
func objectAbs(object string) string {
return "/" + strings.TrimLeft(object, " ./")
}
// 相对路径 rel => relative
func objectRel(object string) string {
return strings.TrimLeft(object, " ./")
}
// MD5 Crypt
func MD5Crypt(str string) string {
h := md5.New()
h.Write([]byte(str))
return hex.EncodeToString(h.Sum(nil))
}
func CompressByGzip(tmpFile, saveFile string) (err error) {
var (
input []byte
buf bytes.Buffer
)
input, err = ioutil.ReadFile(tmpFile)
if err != nil {
return
}
writer, _ := gzip.NewWriterLevel(&buf, gzip.BestCompression)
defer writer.Close()
writer.Write(input)
writer.Flush()
err = ioutil.WriteFile(saveFile, buf.Bytes(), os.ModePerm)
return
}
func toJSON(v interface{}) (jsonStr string) {
p, err := json.Marshal(v)
if err != nil {
return
}
return string(p)
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。