Golang 获取http状态码

golang语言在提交了get或post请求后,服务器会返回一个请求结果,那么想要获取http响应的状态码就可以使用res.StatusCode来获得一个整型的状态值

package main

//获取http状态码

import (
	"fmt"
	"net/http"
	"net/url"
)

func main() {
	u, _ := url.Parse("http://www.baidu.com")
	q := u.Query()
	u.RawQuery = q.Encode()
	res, err := http.Get(u.String())
	if err != nil {
		fmt.Println("0")
		return
	}
	resCode := res.StatusCode
	res.Body.Close()
	if err != nil {
		fmt.Println("0")
		return
	}
	fmt.Printf("%d\r\n", resCode)
}
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 我可以举例如何使用Golang模拟HTTP请求。首先,你可以使用net / http包来创建客户端。然后,你可以使用NewRequest函数来创建一个HTTP请求,并使用client.Do函数来发送该请求。最后,你可以使用response.Body来获取服务器返回的响应内容。 ### 回答2: 在golang中,我们可以使用标准库中的net/http包来模拟发送HTTP请求。下面是一个简单的示例: ```go package main import ( "fmt" "io/ioutil" "net/http" ) func main() { // 创建一个http客户端 client := &http.Client{} // 创建一个GET请求 request, err := http.NewRequest("GET", "https://api.example.com", nil) if err != nil { fmt.Println("创建请求失败:", err) return } // 发送请求并获取响应 response, err := client.Do(request) if err != nil { fmt.Println("发送请求失败:", err) return } defer response.Body.Close() // 读取响应内容 body, err := ioutil.ReadAll(response.Body) if err != nil { fmt.Println("读取响应失败:", err) return } // 输出响应内容 fmt.Println(string(body)) } ``` 在上述例子中,我们创建了一个`http.Client`对象,然后使用`http.NewRequest`方法创建了一个GET请求,并指定了请求的URL。然后通过`client.Do(request)`发送请求并获取响应。最后,我们使用`ioutil.ReadAll`方法读取响应内容,并将其转换为字符串进行输出。 当然,在实际使用过程中,还可以根据需要设置请求头、请求体等相关参数,以及处理请求中的响应状态码、头部信息等。以上只是一个简单的示例,供参考。 ### 回答3: 在Go语言中,我们可以使用`net/http`包轻松地模拟HTTP请求。以下是一个示例: ```go package main import ( "fmt" "io/ioutil" "net/http" ) func main() { url := "https://api.example.com/data" // 要模拟请求的URL req, err := http.NewRequest("GET", url, nil) // 创建一个GET请求 if err != nil { fmt.Println("创建请求失败:", err) return } client := &http.Client{} // 创建一个HTTP客户端 resp, err := client.Do(req) // 发送请求并获取响应 if err != nil { fmt.Println("发送请求失败:", err) return } defer resp.Body.Close() // 在函数结束时关闭响应体 body, err := ioutil.ReadAll(resp.Body) // 读取响应体 if err != nil { fmt.Println("读取响应失败:", err) return } fmt.Println(string(body)) // 打印响应内容 } ``` 在以上示例中,我们首先创建了一个GET请求对象,然后创建了一个HTTP客户端,并发送了该请求。最后,我们从响应体中读取并打印了响应内容。 你可以根据需要修改请求的方法、URL、请求体等。例如,如果你想发送POST请求,只需将`http.NewRequest`函数的第一个参数改为`"POST"`即可。根据API的要求,你可能还需要设置其它请求头字段、添加请求参数等。 通过这个简单的示例,你可以借助`net/http`包轻松地模拟HTTP请求,并在Go语言中处理响应结果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值