fix: ext issue
This commit is contained in:
@@ -201,7 +201,7 @@ func (t *TClient) getExtByFilenameAndMimeType(filename, mimeType string) string
|
||||
if filename != "" && strings.Contains(filename, ".") {
|
||||
ext = filepath.Ext(filename)
|
||||
if ext != "" {
|
||||
return ext
|
||||
return strings.ToLower(ext)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
36
main_test.go
36
main_test.go
@@ -5,6 +5,7 @@ import (
|
||||
"context"
|
||||
"mime"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
"testing"
|
||||
|
||||
"exporter/database/telegram_resource/public/table"
|
||||
@@ -83,11 +84,34 @@ func Test_PublishGrpc(t *testing.T) {
|
||||
}
|
||||
|
||||
func Test_Ext(t *testing.T) {
|
||||
name := "abc.jpg"
|
||||
ext := filepath.Ext(name)
|
||||
t.Logf("Name: %s, Ext: %s", name, ext)
|
||||
|
||||
name = "abc_jpg"
|
||||
ext = filepath.Ext(name)
|
||||
name := "abc.MOV"
|
||||
mime := "video/quicktime"
|
||||
ext := getExtByFilenameAndMimeType(name, mime)
|
||||
t.Logf("Name: %s, Ext: %s", name, ext)
|
||||
}
|
||||
|
||||
func getExtByFilenameAndMimeType(filename, mimeType string) string {
|
||||
ext := ""
|
||||
if filename != "" && strings.Contains(filename, ".") {
|
||||
ext = filepath.Ext(filename)
|
||||
if ext != "" {
|
||||
return strings.ToLower(ext)
|
||||
}
|
||||
}
|
||||
|
||||
exts, err := mime.ExtensionsByType(mimeType)
|
||||
if err != nil {
|
||||
return ext
|
||||
}
|
||||
|
||||
if len(exts) == 0 {
|
||||
switch mimeType {
|
||||
case "application/rar":
|
||||
ext = ".rar"
|
||||
}
|
||||
} else {
|
||||
ext = exts[len(exts)-1]
|
||||
}
|
||||
|
||||
return strings.ToLower(ext)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user