Сертификат истек(http.DefaultClientDo)

Всем привет

Мне нужно отправить https запрос через втроенные в go инструменты.

Я делаю

func Requester(url, method, token, login string) []byte {
    defer tools.Panic_recover("requester")
    url = strings.TrimSpace(fmt.Sprintf("\n%s\n", url))
    req, err := http.NewRequest(method, url, nil)
    req.Header.Add("Login", login)
    req.Header.Add("Token", token)
    tools.Errors("httpnewrequest(from requester)", err)
    resp, err := http.DefaultClient.Do(req) //подозреваю что проблема с дефолтным клиентом http
    tools.Errors("defclido(from requester", err) //здесь `certificate has expired or is not yet valid: current time 2022-04-26T18:04:55+03:00 is after 2014-12-19T10:21:01Z`
    ans, err := ioutil.ReadAll(resp.Body)
    tools.Errors("ioutilreadll from requester", err)
    return ans
}

В комменте написал свои догадки. Пытаюсь исправить так

func Clientt() *http.Client {
    return &http.Client{
        Transport: &http.Transport{
            DialTLS: //здесь не знаю что писать чтобы подключить сюда сертификат,
        },
    }
}

Результат это функции я хочу использовать вмето defaultclient-а У меня есть сертификат wildcard для домена и поддоменов. Requester я делаю с домена на поддомен, серт получается один и тот же подойдет. Но DefaultClienDo пишет certificate has expired or is not yet valid: current time 2022-04-26T18:04:55+03:00 is after 2014-12-19T10:21:01Z. Думаю проблема в настроках дефолтного клиента. Как прописать сертификат свой?


Ответы (1 шт):

Автор решения: Quester

Сори, нашел ответ сам

func Client() *http.Client {
    return &http.Client{
        Transport: &http.Transport{
            TLSClientConfig: &tls.Config{
                InsecureSkipVerify: true, //нужно отключить проверку сертификата
            },
        },
    }
}
→ Ссылка