PHP课程限时特价
PHP一对一教学
PHP全栈开发

如何使用 Golang 处理 HTTP 响应?

PHPz   2024-05-16 16:36   898浏览 原创

golang 中使用 net/http 包处理 http 响应步骤:解析响应:使用 http.response 类型获取响应信息。获取状态代码:使用 statuscode 字段获取响应状态代码。获取标头:使用 header 字段获取响应标头,这是一个 map[string][]string。读取响应正文:使用 body 字段读取响应正文,它是 io.reader。实操案例:使用 json api 检索响应,解析 json 并打印帖子的标题。

如何使用 Golang 处理 HTTP 响应?

如何使用 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 {
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。