general: add createTime/updateTime support in webdav and some drivers general: add hash support in some drivers general: cross-storage rapid-upload support general: enhance upload to avoid local temp file if possible general: replace readseekcloser with File interface to speed upstream operations feat(aliyun_open): same as above feat(crypt): add hack for 139cloud Close #4934 Close #4819 baidu_netdisk needs to improve the upload code to support rapid-upload
33 lines
542 B
Go
33 lines
542 B
Go
package utils
|
|
|
|
import (
|
|
"encoding/base64"
|
|
"strings"
|
|
|
|
"github.com/alist-org/alist/v3/internal/conf"
|
|
)
|
|
|
|
func MappingName(name string) string {
|
|
for k, v := range conf.FilenameCharMap {
|
|
name = strings.ReplaceAll(name, k, v)
|
|
}
|
|
return name
|
|
}
|
|
|
|
var DEC = map[string]string{
|
|
"-": "+",
|
|
"_": "/",
|
|
".": "=",
|
|
}
|
|
|
|
func SafeAtob(data string) (string, error) {
|
|
for k, v := range DEC {
|
|
data = strings.ReplaceAll(data, k, v)
|
|
}
|
|
bytes, err := base64.StdEncoding.DecodeString(data)
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
return string(bytes), err
|
|
}
|