go语言goroutine实时读取接口返回的数据,请求含有请求头

2024-09-05  本文已影响0人  for笑
package main
 
import (
    "crypto/tls"
    "fmt"
    "io/ioutil"
    "net/http"
    "time"
)
 
func main() {
    client := &http.Client{
        Transport: &http.Transport{
            TLSClientConfig: &tls.Config{
                InsecureSkipVerify: true, // 忽略证书验证
            },
        },
        Timeout: 5 * time.Second,
    }
 
    request, err := http.NewRequest("GET", "https://your-api-endpoint.com", nil)
    if err != nil {
        panic(err)
    }
 
    // 设置请求头
    request.Header.Set("Authorization", "Bearer YOUR_TOKEN")
 
    go func() {
        for {
            response, err := client.Do(request)
            if err != nil {
                fmt.Println("Error:", err)
                return
            }
 
            defer response.Body.Close()
            body, err := ioutil.ReadAll(response.Body)
            if err != nil {
                fmt.Println("Error:", err)
                return
            }
 
            fmt.Println("Response:", string(body))
            time.Sleep(10 * time.Second) // 每10秒钟读取一次
        }
    }()
 
    // 阻塞主线程,防止程序提前退出
    select {}
}
上一篇 下一篇

猜你喜欢

热点阅读