在Go語言中,使用http.NewRequest
函數(shù)可以創(chuàng)建GET和POST請求。下面是一個示例代碼,演示如何使用http.NewRequest
創(chuàng)建GET和POST請求:文章來源:http://www.zghlxwxcb.cn/news/detail-785807.html
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
// 創(chuàng)建GET請求
getRequest, err := http.NewRequest("GET", "https://api.example.com/data", nil)
if err != nil {
fmt.Println("創(chuàng)建GET請求失敗:", err)
return
}
// 發(fā)送GET請求并獲取響應
client := &http.Client{}
getResponse, err := client.Do(getRequest)
if err != nil {
fmt.Println("發(fā)送GET請求失敗:", err)
return
}
defer getResponse.Body.Close()
// 讀取GET響應的內容
getResponseBody, err := ioutil.ReadAll(getResponse.Body)
if err != nil {
fmt.Println("讀取GET響應失敗:", err)
return
}
// 打印GET響應的內容
fmt.Println(string(getResponseBody))
// 創(chuàng)建POST請求
postData := []byte(`{"key1": "value1", "key2": "value2"}`)
postRequest, err := http.NewRequest("POST", "https://api.example.com/data", bytes.NewBuffer(postData))
if err != nil {
fmt.Println("創(chuàng)建POST請求失敗:", err)
return
}
postRequest.Header.Set("Content-Type", "application/json") // 設置請求頭,指定內容類型為JSON
// 發(fā)送POST請求并獲取響應
postResponse, err := client.Do(postRequest)
if err != nil {
fmt.Println("發(fā)送POST請求失敗:", err)
return
}
defer postResponse.Body.Close()
// 讀取POST響應的內容
postResponseBody, err := ioutil.ReadAll(postResponse.Body)
if err != nil {
fmt.Println("讀取POST響應失敗:", err)
return
}
// 打印POST響應的內容
fmt.Println(string(postResponseBody))
}
在上述示例中,我們首先創(chuàng)建了一個GET請求,指定了請求的URL為"https://api.example.com/data"。然后,我們使用http.Client
類型的客戶端發(fā)送該請求,并獲取響應。對于POST請求,我們創(chuàng)建了一個包含JSON數(shù)據(jù)的請求主體,并設置了請求頭的"Content-Type"字段為"application/json"。然后,我們使用相同的客戶端發(fā)送該請求,并獲取響應。最后,我們讀取并打印了GET和POST響應的內容。文章來源地址http://www.zghlxwxcb.cn/news/detail-785807.html
到了這里,關于golang如何用http.NewRequest創(chuàng)建get和post請求的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!