func NewVSRequestor()

in vidispine/VSRequestor.go [27:59]


func NewVSRequestor(url url.URL, user string, passwd string) *VSRequestor {
	tlsConfig := &tls.Config{}
	tlsConfig.InsecureSkipVerify = true
	var transport http.RoundTripper = &http.Transport{
		Proxy: http.ProxyFromEnvironment,
		DialContext: (&net.Dialer{
			Timeout:   30 * time.Second,
			KeepAlive: 30 * time.Second,
		}).DialContext,
		MaxIdleConns:          100,
		IdleConnTimeout:       90 * time.Second,
		TLSHandshakeTimeout:   10 * time.Second,
		ExpectContinueTimeout: 1 * time.Second,
		TLSClientConfig:       tlsConfig,
		// Set this value so that the underlying transport round-tripper
		// doesn't try to auto decode the body of objects with
		// content-encoding set to `gzip`.
		//
		// Refer:
		//    https://golang.org/src/net/http/transport.go?h=roundTrip#L1843
		DisableCompression: true,
	}
	authpart := base64.StdEncoding.EncodeToString([]byte(fmt.Sprintf("%s:%s", user, passwd)))
	computedAuthString := fmt.Sprintf("Basic %s", authpart)

	return &VSRequestor{
		url:  url,
		auth: computedAuthString,
		client: http.Client{
			Transport: transport,
		},
	}
}