go 请求http长连接
时间: 2023-11-26 11:05:57 浏览: 29
要发送一个 HTTP 长连接请求,需要使用 Go 标准库中的 `net/http` 包。其中,可以通过设置 `Transport` 结构体的 `DisableKeepAlives` 字段为 `false`,来开启 HTTP 长连接。
下面是一个简单的示例代码:
```go
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
client := &http.Client{
Transport: &http.Transport{
DisableKeepAlives: false,
},
}
req, err := http.NewRequest("GET", "http://example.com", nil)
if err != nil {
fmt.Println("Error:", err)
return
}
resp, err := client.Do(req)
if err != nil {
fmt.Println("Error:", err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("Error:", err)
return
}
fmt.Println(string(body))
}
```
在这个示例代码中,我们创建了一个 `http.Client` 客户端,并设置了 `DisableKeepAlives` 字段为 `false`,以开启 HTTP 长连接。然后,我们创建了一个 `GET` 请求,并发送给服务器。最后,我们读取服务器返回的响应内容,并输出到控制台。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)