github.com/blend/go-sdk@v1.20240719.1/webutil/remove_host_empty_port.go (about)

     1  /*
     2  
     3  Copyright (c) 2024 - Present. Blend Labs, Inc. All rights reserved
     4  Use of this source code is governed by a MIT license that can be found in the LICENSE file.
     5  
     6  */
     7  
     8  package webutil
     9  
    10  import "strings"
    11  
    12  // RemoveHostEmptyPort strips the empty port in ":port" to ""
    13  // as mandated by RFC 3986 Section 6.2.3.
    14  func RemoveHostEmptyPort(host string) string {
    15  	if HostHasPort(host) {
    16  		return strings.TrimSuffix(host, ":")
    17  	}
    18  	return host
    19  }
    20  
    21  // HostHasPort returns true if a string is in the form "host:port", or "[ipv6::address]:port".
    22  func HostHasPort(s string) bool { return strings.LastIndex(s, ":") > strings.LastIndex(s, "]") }