使用 Go 的标准库 net/http 可以发送 HTTP POST 请求,并设置自定义的 Header 头信息。以下示例代码展示了如何实现这一功能:

package main

import (
    "bytes"
    "net/http"
)

func main() {
    url := "http://example.com/api"
    data := []byte(`{"key": "value"}`)

    req, err := http.NewRequest("POST", url, bytes.NewBuffer(data))
    if err != nil {
        // 处理错误
    }

    req.Header.Set("Content-Type", "application/json")
    req.Header.Set("Authorization", "Bearer <token>")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        // 处理错误
    }

    defer resp.Body.Close()

    // 处理响应
}

代码中,首先创建一个 http.NewRequest 对象,设置请求方法为 POST,请求 URL 为目标 API 的地址,请求数据为 data。然后使用 req.Header.Set 方法设置自定义的 Header 头信息,例如 Content-TypeAuthorization

接着,创建一个 http.Client 对象,并使用其 Do 方法发送请求。最后,处理响应数据。注意要在请求结束后关闭响应体 resp.Body

Golang 发送 HTTP POST 请求:自定义 Header 头信息

原文地址: https://www.cveoy.top/t/topic/nfoy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录