golang 发起post请求
时间: 2023-12-27 16:25:48 浏览: 127
以下是使用Golang发起POST请求的示例代码:
```go
package main
import (
"fmt"
"net/http"
"net/url"
"strings"
)
func main() {
// 创建一个http.Client对象
client := &http.Client{}
// 创建POST请求的URL和请求体
url := "http://example.com/api"
data := url.Values{}
data.Set("key1", "value1")
data.Set("key2", "value2")
payload := strings.NewReader(data.Encode())
// 创建POST请求
req, err := http.NewRequest("POST", url, payload)
if err != nil {
fmt.Println("Error creating request:", err)
return
}
// 设置请求头
req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
// 发送请求并获取响应
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)
// 读取响应体
// ...
}
```
阅读全文