سلام
در قطعه کد زیر
func GetResponse(content chan<- string, url string) {
// if url == "https://livescore-api.varzesh3.com/v1.0/livescore/today" {
// time.Sleep(time.Millisecond * 50)
// }
// time.Sleep(time.Second * 3)
client := http.Client{}
request, err := http.NewRequest("GET", url, nil)
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, time.Millisecond*10000)
defer cancel()
request = request.WithContext(ctx)
if err != nil {
panic(err)
}
request.Header = http.Header{}
request.Header.Add("referer", "https://www.varzesh3.com/")
response, err := client.Do(request)
if err != nil {
panic(err)
}
defer response.Body.Close()
responseBody, err := ioutil.ReadAll(response.Body)
if err != nil {
panic(err)
}
destination := &bytes.Buffer{}
if err = json.Indent(destination, responseBody, "", " "); err != nil {
panic(err)
}
PrintlnWithTime("Before set content")
content <- destination.String()
PrintlnWithTime("After set content")
}
چرا از کد زیر استفاده شده است و کاربرد آن چیست؟ و همچنین در چه مواردی باید به این روش عمل نمود ؟
destination := &bytes.Buffer{}