在Golang中,你可以使用标准库"log"来记录网络请求。以下是一个简单的示例,展示了如何使用"log`包记录HTTP GET请求的信息:
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
)
func main() {
url := "https://api.example.com/data"
// 发送HTTP GET请求
resp, err := http.Get(url)
if err != nil {
log.Fatalf("Error fetching URL: %v", err)
}
defer resp.Body.Close()
// 读取响应内容
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatalf("Error reading response body: %v", err)
}
// 记录网络请求信息
log.Printf("Request to %s completed with status code: %d\n", url, resp.StatusCode)
log.Printf("Response body: %s\n", string(body))
}
在这个示例中,我们首先发送一个HTTP GET请求到指定的URL。如果请求过程中出现错误,我们使用log.Fatalf记录错误信息并终止程序。如果请求成功,我们读取响应内容并使用log.Printf记录请求的URL、状态码和响应内容。
你可以根据需要调整日志记录的详细程度和格式。例如,你可以添加时间戳、请求耗时等信息。为了实现更高级的日志记录功能,你还可以考虑使用第三方日志库,如logrus或zap。这些库提供了更多的功能和配置选项,可以帮助你更好地管理和分析日志。