From d84f7af43dd6abd8d70b76269a7a51847e1c7a1a Mon Sep 17 00:00:00 2001 From: Zeke Lu Date: Wed, 12 May 2021 11:22:27 +0800 Subject: [PATCH] support host/domain name in the original url --- allocate_test.go | 22 ++++++++++++++++++++++ util.go | 2 +- 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/allocate_test.go b/allocate_test.go index c7dc5c6a..e482a9c6 100644 --- a/allocate_test.go +++ b/allocate_test.go @@ -5,8 +5,10 @@ import ( "context" "fmt" "io/ioutil" + "net" "net/http" "net/http/httptest" + "net/url" "os" "os/exec" "strings" @@ -142,6 +144,26 @@ func TestRemoteAllocator(t *testing.T) { return "http" + wsURL[2:strings.Index(wsURL, "devtools")] }, }, + { + name: "hostname", + modifyURL: func(wsURL string) string { + h, err := os.Hostname() + if err != nil { + t.Fatal(err) + } + u, err := url.Parse(wsURL) + if err != nil { + t.Fatal(err) + } + _, post, err := net.SplitHostPort(u.Host) + if err != nil { + t.Fatal(err) + } + u.Host = net.JoinHostPort(h, post) + u.Path = "/" + return u.String() + }, + }, } for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { diff --git a/util.go b/util.go index 74cbf1fd..2e56aca9 100644 --- a/util.go +++ b/util.go @@ -55,7 +55,7 @@ func detectURL(urlstr string) string { u.Path = "/json/version" // to get "webSocketDebuggerUrl" in the response - resp, err := http.Get(u.String()) + resp, err := http.Get(forceIP(u.String())) if err != nil { return urlstr }