NAM-APJATEL-BACKEND/utils/insecure_http.go

34 lines
800 B
Go

package utils
import (
"crypto/tls"
"net/http"
"time"
)
// CreateInsecureHTTPClient creates an HTTP client that skips SSL verification
func CreateInsecureHTTPClient() *http.Client {
tr := &http.Transport{
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
}
return &http.Client{
Transport: tr,
Timeout: 30 * time.Second,
}
}
// CreateSecureHTTPClient creates a standard HTTP client with SSL verification
func CreateSecureHTTPClient() *http.Client {
return &http.Client{
Timeout: 30 * time.Second,
}
}
// GetHTTPClient returns appropriate client based on environment
func GetHTTPClient(skipSSL bool) *http.Client {
if skipSSL {
return CreateInsecureHTTPClient()
}
return CreateSecureHTTPClient()
}