Dans Go, la gestion des cookies pour les requêtes HTTP peut être réalisée à l'aide du package cookiejar introduit dans Go 1.1. En créant un CookieJar et en l'associant à un client HTTP, les cookies peuvent être automatiquement stockés et récupérés pour les requêtes ultérieures.
Voici un exemple de la façon de se connecter à un site Web, de stocker le cookies, et accédez à une autre page en utilisant les cookies stockés :
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) }
Dans cet exemple, le CookieJar est utilisé pour stocker automatiquement les cookies renvoyés par la demande de connexion. Ces cookies sont ensuite utilisés pour autoriser la demande ultérieure sur la page /ma/facture.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!