package main
import (
"fmt"
"github.com/gogf/gf/frame/g"
"github.com/gogf/gf/net/ghttp"
)
func main() {
// 创建一个 HTTP 客户端
client := ghttp.NewClient()
// 自定义设置 Header
headers := map[string]string{
"Authorization": "Bearer YourToken",
"Custom-Header": "CustomValue",
}
// 发送 GET 请求时携带自定义 Header
resp, err := client.SetHeaderMap(headers).Get("http://example.com/path")
if err != nil {
fmt.Println("GET 请求发生错误:", err)
} else {
defer resp.Close()
fmt.Println("GET 响应状态码:", resp.StatusCode)
fmt.Println("GET 响应内容:", resp.ReadAllString())
}
// 发送 POST 请求时携带自定义 Header
resp, err = client.SetHeaderMap(headers).Post("http://example.com/path", g.Map{
"key": "value",
})
if err != nil {
fmt.Println("POST 请求发生错误:", err)
} else {
defer resp.Close()
fmt.Println("POST 响应状态码:", resp.StatusCode)
fmt.Println("POST 响应内容:", resp.ReadAllString())
}
}
在这个例子中,我们首先创建了一个 ghttp.Client 对象,然后通过 SetHeaderMap 方法设置了自定义的 Header。在发送请求时,这些 Header 将被携带到服务器。在这里,我们使用的是 map[string]string 类型的 headers,你可以根据自己的需求设置其他 Header 参数。
请确保你的应用程序有权在客户端设置自定义的 Header,并且服务器端能够正常处理这些 Header。
这只是 ghttp.Client 中自定义 Header 的一个简单示例。在实际应用中,你可能还需要处理更多的请求和响应逻辑,例如设置其他请求参数、处理服务器的响应等。确保查阅 GoFrame 文档以获取更多详细信息和示例。
转载请注明出处:http://www.zyzy.cn/article/detail/7847/GoFrame