fix(uri): hash tag is not properly handled in CrUri

This commit is contained in:
Aaron Liu
2025-05-08 19:19:54 +08:00
parent c5467f228a
commit fbf1d1d42c
2 changed files with 3 additions and 4 deletions

View File

@@ -344,11 +344,10 @@ func NewShareUri(id, password string) string {
return fmt.Sprintf("%s://%s@%s", constants.CloudreveScheme, id, constants.FileSystemShare)
}
// PathEscape is same as url.PathEscape, with modifications to incoporate with JS encodeURI:
// PathEscape is same as url.PathEscape, with modifications to incoporate with JS encodeURIComponent:
// encodeURI() escapes all characters except:
//
// AZ az 09 - _ . ! ~ * ' ( )
// ; / ? : @ & = + $ , #
func PathEscape(s string) string {
hexCount := 0
for i := 0; i < len(s); i++ {
@@ -412,7 +411,7 @@ func shouldEscape(c byte) bool {
}
switch c {
case '-', '_', '.', '~', '!', '*', '\'', '(', ')', ';', '/', '?', ':', '@', '&', '=', '+', '$', ',', '#': // §2.3 Unreserved characters (mark)
case '-', '_', '.', '~', '!', '*', '\'', '(', ')': // §2.3 Unreserved characters (mark)
return false
}