ethstats: work around weird URL scheme parsing issues

This commit is contained in:
Péter Szilágyi 2017-03-30 12:52:34 +03:00
parent 1cf2ee4597
commit db93641941
No known key found for this signature in database
GPG Key ID: E9AE538CEDF8293D

View File

@ -23,10 +23,10 @@ import (
"fmt"
"math/big"
"net"
"net/url"
"regexp"
"runtime"
"strconv"
"strings"
"time"
"github.com/ethereum/go-ethereum/common"
@ -128,7 +128,7 @@ func (s *Service) loop() {
path := fmt.Sprintf("%s/api", s.host)
urls := []string{path}
if parsed, err := url.Parse(path); err == nil && !parsed.IsAbs() {
if !strings.Contains(path, "://") { // url.Parse and url.IsAbs is unsuitable (https://github.com/golang/go/issues/19779)
urls = []string{"wss://" + path, "ws://" + path}
}
// Establish a websocket connection to the server on any supported URL