Rumah >pembangunan bahagian belakang >Golang >Gunakan fungsi http.NewRequest untuk mencipta objek permintaan GET baharu dan tetapkan pengepala dan parameter permintaan
Gunakan fungsi http.NewRequest untuk mencipta objek permintaan GET baharu, dan tetapkan pengepala dan parameter permintaan
Dalam bahasa Go, kita boleh menggunakan fungsi http.NewRequest
untuk mencipta objek permintaan GET baharu , dan Tetapkan pengepala dan parameter permintaan. Fungsi http.NewRequest
menerima tiga parameter: kaedah permintaan, URL permintaan dan isi permintaan. Kami boleh menggunakan pemalar http.MethodGet
untuk mewakili kaedah permintaan GET, dan menggunakan rentetan untuk mewakili URL permintaan yang akan dihantar. Jika tiada isi permintaan, anda boleh lulus dalam nol. http.NewRequest
函数创建一个新的GET请求对象,并设置请求头和参数。http.NewRequest
函数接受三个参数:请求方法、请求URL和请求体。我们可以使用http.MethodGet
常量表示GET请求方法,使用字符串表示要发送的请求URL,如果没有请求体,可以传入nil。
我们首先需要导入net/http
和fmt
包:
import ( "fmt" "net/http" )
然后,我们可以使用http.NewRequest
函数创建一个新的GET请求对象,并设置请求头和参数。示例代码如下:
func main() { url := "https://example.com/api" req, err := http.NewRequest(http.MethodGet, url, nil) if err != nil { fmt.Println("创建请求失败:", err) return } // 设置请求头 req.Header.Add("Authorization", "Bearer token123") // 设置请求参数 query := req.URL.Query() query.Add("key1", "value1") query.Add("key2", "value2") req.URL.RawQuery = query.Encode() // 发送请求 client := http.Client{} resp, err := client.Do(req) if err != nil { fmt.Println("发送请求失败:", err) return } defer resp.Body.Close() // 处理响应 fmt.Println("状态码:", resp.StatusCode) }
在上面的示例中,我们创建了一个GET请求对象,并设置了请求头和参数。我们可以使用req.Header.Add
方法添加请求头,使用req.URL.Query
方法获取请求URL的查询参数,并使用query.Add
方法添加参数。
最后,我们使用http.Client
发送请求,并使用resp.StatusCode
获取响应的状态码。这里我们使用了defer resp.Body.Close()
语句来确保响应体在使用完毕后被关闭,以避免资源泄漏。
总结:使用http.NewRequest
函数可以方便地创建一个新的GET请求对象,并设置请求头和参数。我们可以通过调用相关的方法来添加请求头和参数。发送请求和处理响应的代码也很简单,通过http.Client
和resp.StatusCode
net/http
dan fmt
terlebih dahulu: 🎜rrreee🎜 Kemudian, kita boleh menggunakan fungsi http.NewRequest
untuk buat objek permintaan GET baharu dan tetapkan pengepala dan parameter permintaan. Kod sampel adalah seperti berikut: 🎜rrreee🎜Dalam contoh di atas, kami mencipta objek permintaan GET dan menetapkan pengepala dan parameter permintaan. Kita boleh menggunakan kaedah req.Header.Add
untuk menambah pengepala permintaan, menggunakan kaedah req.URL.Query
untuk mendapatkan parameter pertanyaan URL permintaan dan menggunakan query.Add kaedah menambah parameter. 🎜🎜Akhir sekali, kami menggunakan http.Client
untuk menghantar permintaan dan menggunakan resp.StatusCode
untuk mendapatkan kod status respons. Di sini kami menggunakan pernyataan defer resp.Body.Close()
untuk memastikan badan respons ditutup selepas digunakan untuk mengelakkan kebocoran sumber. 🎜🎜Ringkasan: Gunakan fungsi http.NewRequest
untuk membuat objek permintaan GET baharu dengan mudah dan tetapkan pengepala dan parameter permintaan. Kami boleh menambah pengepala permintaan dan parameter dengan memanggil kaedah yang berkaitan. Kod untuk menghantar permintaan dan memproses respons juga sangat mudah, cuma hantar http.Client
dan resp.StatusCode
. Kod sedemikian mempunyai struktur yang jelas dan mudah dikembangkan dan dikekalkan. 🎜Atas ialah kandungan terperinci Gunakan fungsi http.NewRequest untuk mencipta objek permintaan GET baharu dan tetapkan pengepala dan parameter permintaan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!