working commit
This commit is contained in:
@@ -34,6 +34,29 @@ func NewReferer(hostname, object, operation string) (*Referer, error) {
|
||||
return ref, err
|
||||
}
|
||||
|
||||
func ParseHostinfo(hostname string) (*Referer, error) {
|
||||
ref := &Referer{}
|
||||
if !strings.Contains(hostname, "://") {
|
||||
hostname = "https://" + hostname
|
||||
}
|
||||
urlobj, err := url.Parse(hostname)
|
||||
if err != nil {
|
||||
return ref, err
|
||||
}
|
||||
if urlobj.User != nil {
|
||||
ref.user = urlobj.User.Username()
|
||||
ref.pass, _ = urlobj.User.Password()
|
||||
urlobj.User = nil
|
||||
}
|
||||
urlobj.Path = "/"
|
||||
ref.urlobj = urlobj
|
||||
return ref, err
|
||||
}
|
||||
|
||||
func (ref *Referer) Host() string {
|
||||
return ref.urlobj.Host
|
||||
}
|
||||
|
||||
func (ref *Referer) Raw() string {
|
||||
return path.Join(ref.urlobj.Host, "/v3/api/", ref.obj, ref.oper)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user