url.go 417 B

123456789101112131415161718192021222324252627282930
  1. package utils
  2. import (
  3. "strings"
  4. )
  5. func JoinURI(elem ...string) string {
  6. if len(elem) <= 0 {
  7. return ""
  8. }
  9. uri := ""
  10. for i, u := range elem {
  11. u = strings.Replace(u, "\\", "/", -1)
  12. if i == 0 {
  13. if !strings.HasSuffix(u, "/") {
  14. u = u + "/"
  15. }
  16. uri = u
  17. } else {
  18. u = strings.Replace(u, "//", "/", -1)
  19. if strings.HasPrefix(u, "/") {
  20. u = string(u[1:])
  21. }
  22. uri += u
  23. }
  24. }
  25. return uri
  26. }