FILE / ScuroNeko/mtg

telegram/api/api.go

Исходный файл и его история в репозитории.
FILE 646294b6ba7d816a21d007fc6e927effa8e3c6b9
Files
mtg/telegram/api/api.go
T
2019-10-11 09:41:18 +03:00

41 lines
658 B
Go

package api
import (
"fmt"
"io"
"io/ioutil"
"net/http"
"time"
)
const (
apiUserAgent = "mtg"
apiHTTPTimeout = 30 * time.Second
)
var httpClient = http.Client{
Timeout: apiHTTPTimeout,
}
func request(url string) (io.ReadCloser, error) {
req, err := http.NewRequest("GET", url, nil)
if err != nil {
panic(err)
}
req.Header.Set("Accept", "text/plan")
req.Header.Set("User-Agent", apiUserAgent)
resp, err := httpClient.Do(req)
if err != nil {
if resp != nil {
io.Copy(ioutil.Discard, resp.Body) // nolint: errcheck
resp.Body.Close()
}
return nil, fmt.Errorf("cannot perform a request: %w", err)
}
return resp.Body, err
}