I am a GO newbie. I am trying to convert a curl command to GOlang.
curl --cacert "pki/ca.crt" \
-H "Authorization: Bearer my_bearer_token" \
--insecure \
--max-time 5 --fail --output /dev/null --silent \
"https://myserver/status"; do
This is what I have got:
mTLSConfig := &tls.Config {
CipherSuites: []uint16 {
tls.TLS_RSA_WITH_RC4_128_SHA,
tls.TLS_RSA_WITH_3DES_EDE_CBC_SHA,
tls.TLS_RSA_WITH_AES_128_CBC_SHA,
tls.TLS_ECDHE_RSA_WITH_RC4_128_SHA,
tls.TLS_RSA_WITH_AES_128_CBC_SHA,
tls.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
},
InsecureSkipVerify: true, // --insecure
}
mTLSConfig.PreferServerCipherSuites = true
mTLSConfig.MinVersion = tls.VersionTLS10
mTLSConfig.MaxVersion = tls.VersionTLS10
certs := x509.NewCertPool()
certs.AppendCertsFromPEM([]byte(caCert))
mTLSConfig.RootCAs = certs
tr := &http.Transport{
TLSClientConfig: mTLSConfig,
}
client := &http.Client{Transport: tr}
req, _ := http.NewRequest("GET", "https://myserver/status", nil)
req.Header.Set("Authorization", fmt.Sprintf("Bearer my_bearer_token"))
resp, err := client.Do(req)
glog.V(4).Info(resp, err)
if err != nil {
return true
}
return false
Am I doing it right?