Dalam Go, mengurus kuki untuk permintaan HTTP boleh dicapai menggunakan pakej cookiejar yang diperkenalkan dalam Go 1.1. Dengan mencipta CookieJar dan mengaitkannya dengan klien HTTP, kuki boleh disimpan dan diambil secara automatik untuk permintaan seterusnya.
Berikut ialah contoh cara untuk log masuk ke tapak web, simpan kuki, dan akses halaman lain menggunakan kuki yang disimpan:
package main import ( "fmt" "net/http" "net/http/cookiejar" "net/url" ) func main() { // Create a new cookie jar. jar, err := cookiejar.New(nil) if err != nil { panic(err) } // Create an HTTP client that uses the cookie jar. client := &http.Client{ Jar: jar, } // Login to the website. loginPostUrl := "http://www.example.com/login" values := url.Values{} values.Set("username", "my_username") values.Set("password", "my_password") resp, err := client.PostForm(loginPostUrl, values) if err != nil { panic(err) } defer resp.Body.Close() // View the user's bill. viewBillUrl := "http://www.example.com/my/bill" resp, err = client.Get(viewBillUrl) if err != nil { panic(err) } defer resp.Body.Close() // Read the bill's contents. billContents, err := resp.Body.ReadString('\n') if err != nil { panic(err) } fmt.Println(billContents) }
Dalam contoh ini, CookieJar ialah digunakan untuk menyimpan secara automatik kuki yang dikembalikan oleh permintaan log masuk. Kuki ini kemudiannya digunakan untuk membenarkan permintaan seterusnya ke halaman /my/bil.
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Permintaan HTTP POST dengan Kuki dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!