使用net/http.Head函数发送HEAD请求并获取响应状态码

在Go语言中,我们可以使用net/http包提供的函数来发送HTTP请求并处理HTTP响应。其中,Head函数可以发送一个HEAD请求,并返回响应的状态码。

下面是一个示例代码,展示了如何使用net/http.Head函数发送HEAD请求并获取响应状态码:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    // 创建一个http.Client
    client := &http.Client{}

    // 创建一个HEAD请求
    req, err := http.NewRequest("HEAD", "https://www.example.com", nil)
    if err != nil {
        fmt.Println("创建请求失败:", err)
        return
    }

    // 发送请求
    resp, err := client.Do(req)
    if err != nil {
        fmt.Println("发送请求失败:", err)
        return
    }
    defer resp.Body.Close()

    // 获取响应状态码
    statusCode := resp.StatusCode
    fmt.Println("响应状态码:", statusCode)
}
登录后复制

在上面的示例代码中,我们首先创建了一个http.Client,然后使用http.NewRequest函数创建了一个HEAD请求对象。接着,我们通过client.Do方法发送了该请求,并得到了响应对象resp。最后,我们通过resp.StatusCode获取了响应的状态码,并将其打印出来。

需要注意的是,上述代码中的请求地址是"https://www.example.com",你可以将其替换为具体的目标网址。

通过上述代码示例,我们可以方便地使用net/http包的Head函数发送HEAD请求并获取响应的状态码。这对于某些场景下,我们只关心服务是否可用、响应时间等信息的情况非常有用。

以上就是使用net/http.Head函数发送HEAD请求并获取响应状态码的详细内容,更多请关注Work网其它相关文章!

09-18 20:58