在 Golang 中使用 net/http 包处理 HTTP 响应步骤:解析响应:使用 http.Response 类型获取响应信息。获取状态代码:使用 StatusCode 字段获取响应状态代码。获取标头:使用 Header 字段获取响应标头,这是一个 map[string][]string。读取响应正文:使用 Body 字段读取响应正文,它是 io.Reader。实操案例:使用 JSON API 检索响应,解析 JSON 并打印帖子的标题。
如何使用 Golang 处理 HTTP 响应
当您发送 HTTP 请求时,服务器会返回一个响应。此响应包含有关请求状态以及请求内容(如果有)的信息。在 Golang 中,可以使用 net/http
包来处理 HTTP 响应。
解析响应
要解析 HTTP 响应,可以使用 http.Response
类型。此类型包含有关响应的信息,包括状态代码、标头和响应正文。以下是如何解析响应:
resp, err := http.Get("https://example.com") if err != nil { // 处理错误 } defer resp.Body.Close()
获取状态代码
要获取响应的状态代码,可以使用 StatusCode
字段:
statusCode := resp.StatusCode
获取标头
要获取响应标头,可以使用 Header
字段:
header := resp.Header
Header
字段是一个 map[string][]string
,其中键是标头名称,值是标头值列表。
读取响应正文
要读取响应正文,可以使用 Body
字段:
body, err := ioutil.ReadAll(resp.Body) if err != nil { // 处理错误 }
Body
字段是 io.Reader
,可以从中读取响应正文。
实战案例:使用 JSON API
以下是一个实战案例,演示如何使用 Golang 检索 JSON API 响应:
package main import ( "encoding/json" "fmt" "io/ioutil" "net/http" ) type Post struct {
以上是如何使用 Golang 处理 HTTP 响应?的详细内容。更多信息请关注PHP中文网其他相关文章!