下面是一个简单的示例: ```go package main import ( "bytes" "fmt" "net/http" ) func main() { url := "http://httpbin.org/post" data := []byte(`{"name":"John","age":30}`) req, err := http.NewRequest("POST", url, bytes.NewBuffer(data)) if err != nil { fmt.Println("Error creating request:", err) return } req.Header.Set("Content-Type", "application/json") client := &http.Client{} resp, err := client.Do(req) if err != nil { fmt.Println("Error sending request:", err) return } defer resp.Body.Close() fmt.Println("Response Status:", resp.Status) fmt.Println("Response Body:") buf := new(bytes.Buffer) buf.ReadFrom(resp.Body) fmt.Println(buf.String()) } ``` 在这个示例中,我们首先定义了一个URL和一个JSON数据。然后,我们创建了一个HTTP请求,并设置了请求方法、URL和请求体。我们还设置了请求头,以指定请求体的类型。接下来,我们创建了一个HTTP客户端,并使用它来发送请求。最后,我们解析响应并打印出来。 要运行此示例,请将代码复制到一个名为“main.go”的文件中,然后在终端中导航到该文件所在的目录,并运行以下命令: ``` go run main.go ``` 这将打印出HTTP响应的状态和内容。