修复GetShortNameFromURL中的bug

This commit is contained in:
gazebo
2019-09-26 11:04:37 +08:00
parent 60b141ef43
commit 860040e6f1
2 changed files with 23 additions and 7 deletions

View File

@@ -733,14 +733,13 @@ func BatchString2Slice(strs ...string) (strList []string) {
}
func GetShortNameFromURL(strURL string) (shortName string) {
index := strings.LastIndex(strURL, "/")
index2 := strings.LastIndex(strURL, "?")
index := strings.Index(strURL, "?")
if index != -1 {
if index2 == -1 {
shortName = strURL[index+1:]
} else {
shortName = strURL[index+1 : index2]
}
strURL = strURL[:index]
}
index = strings.LastIndex(strURL, "/")
if index != -1 {
shortName = strURL[index+1:]
}
return shortName
}

View File

@@ -188,3 +188,20 @@ func TestGetLastTimeFromList(t *testing.T) {
}
}
func TestGetShortNameFromURL(t *testing.T) {
for _, v := range [][]string{
[]string{
"20b569a7cf7e8045b2d7bb550900cf86.jpeg",
"http://image.jxc4.com/20b569a7cf7e8045b2d7bb550900cf86.jpeg?imageMogr2/thumbnail/x800/gravity/Center/crop/800x800",
},
[]string{
"91b8dcb5cb6b462bc96078b7210470b7.jpg",
"http://image.jxc4.com/image/91b8dcb5cb6b462bc96078b7210470b7.jpg",
},
} {
if str := GetShortNameFromURL(v[1]); str != v[0] {
t.Errorf("%s failed, result:%s, expect:%s", v[1], str, v[0])
}
}
}