У меня есть хозяин и раб.Мастер имеет результат вызова API, который принимает JSON.И у меня есть proplem с slave, который отправляет этот результат на master, в первый раз мой код отправляет json хорошо, но во второй раз, код останавливается (программа ждет .....) на resp, err := client.Do(req)
, когда создается запрос на master.код salve:
func main (){
for {
// some code, very long code
sendResult(resFiles)
}
}
func sendResult(rf common.ResultFiles) {
jsonValue, err := json.Marshal(rf)
req, err := http.NewRequest(methodPost, ResultAdress,
bytes.NewBuffer(jsonValue))
req.Header.Set("Content-Type", ContentType)
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("response Status:", resp.Status)
}
мастер-вызов API:
func result(c echo.Context) error {
rf := &ResultFiles{}
err := c.Bind(rf)
if err != nil {
log.Fatal(err)
}
rfChannel <- *rf
return c.JSON(http.StatusOK, nil)
}
Мой вопрос: почему?Может быть проблема в стандартном клиентском golang (http.Client) или тайм-аут?Если я установил тайм-аут - мой код завис по тайм-ауту))) ожидается .... Спасибо!