Skip to content

Instantly share code, notes, and snippets.

View hriddhidey's full-sized avatar
🐼
Liberty in Tranquility

Hriddhi Dey hriddhidey

🐼
Liberty in Tranquility
View GitHub Profile
@hriddhidey
hriddhidey / fetch.go
Last active October 3, 2021 16:52
Fetch makes network calls using the method (POST/GET..), the URL // to hit, headers to add (if any), and the body of the request. This function can serve as a singular resource for all your network calls to pass through, thus becoming an http interceptor. You may add a lot of n/w layer related customizations here as you wish - headers, auth, red…
// Fetch makes network calls using the method (POST/GET..), the URL // to hit, headers to add (if any), and the body of the request.
// Feel free to add more stuff to before/after making the actual n/w call!
func Fetch(method string, url string, header map[string]string, body io.Reader) (*http.Response, err) {
// Create client with required custom parameters.
// Options: Disable keep-alives, 30sec n/w call timeout.
client := &http.Client{
Transport: &http.Transport{
DisableKeepAlives: true,
},
Timeout: time.Duration(10 * time.Second),