FILE / ScuroNeko/mtg

telegram/api/api.go

Исходный файл и его история в репозитории.
FILE cac476901df42db21b81a3de7191a925f47e8d04
Files
mtg/telegram/api/api.go
T

41 lines
678 B
Go

package api
import (
"fmt"
"io"
"io/ioutil"
"net/http"
"time"
)
const (
apiUserAgent = "github.com/9seconds/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
}