Maison > Article > développement back-end > Comment demander des cookies dans Golang
Golang demande des cookies
En tant que programmeur, nous impliquons souvent des requêtes réseau Lors de la mise en œuvre des fonctions de requête réseau, nous devons souvent utiliser des cookies. Alors, comment demander des cookies dans Golang ? Ensuite, cet article expliquera comment demander des cookies dans Golang.
Tout d’abord, nous devons comprendre ce que sont les cookies. Le cookie est une méthode de transmission de données dans le protocole HTTP, utilisée pour enregistrer les informations d'état du client. Il peut enregistrer les informations de connexion de l'utilisateur, l'historique de navigation, le panier et d'autres informations, réalisant ainsi le suivi et la gestion des informations de l'utilisateur.
Dans Golang, la demande de cookies est divisée en deux parties : la configuration des cookies et l'obtention des cookies.
Définir le cookie :
Dans la requête Golang, vous pouvez définir le cookie en définissant l'en-tête. Sur certains sites Web nécessitant une connexion, il est nécessaire d'insérer des cookies dans l'en-tête de la demande pour obtenir illégalement des données.
Exemple de code :
func setCookie() { url := "https://www.example.com/login" req, err := http.NewRequest("POST", url, strings.NewReader(`{"foo":"bar"}`)) if err != nil { log.Fatalln(err) } req.Header.Set("Content-Type", "application/x-www-form-urlencoded") //设置Cookie req.AddCookie(&http.Cookie{Name: "user", Value: "123"}) cli := http.Client{} resp, err := cli.Do(req) if err != nil { log.Fatalln(err) } defer resp.Body.Close() fmt.Println(resp.StatusCode) }
Dans l'exemple, nous construisons d'abord le corps de la requête d'une requête de publication, définissons le Content-Type dans l'en-tête de la requête, puis définissons un utilisateur nommé user avec la valeur via req.AddCookie() méthode. 123 cookies.
Obtenir Cookie :
Dans la requête Golang, vous pouvez obtenir Cookie via l'objet Request. Lors de l'exécution de certaines opérations de logique métier, nous devons obtenir des cookies à partir de l'en-tête de demande de lien pour obtenir certaines informations sur le site Web.
Exemple de code :
func getCookie() { url := "https://www.example.com/home" req, err := http.NewRequest("GET", url, nil) if err != nil { log.Fatalln(err) } cli := http.Client{} resp, err := cli.Do(req) if err != nil { log.Fatalln(err) } defer resp.Body.Close() cookies := resp.Cookies() for _, c := range cookies { fmt.Printf("cookieName=%s; cookieValue=%s\n", c.Name, c.Value) } }
Dans l'exemple, nous construisons d'abord le corps de la requête d'une requête GET, puis obtenons les cookies dans le corps de la réponse en appelant la méthode resp.Cookies(), et enfin envoyons les cookies obtenus à la console .
Résumé :
Grâce à l'exemple de code ci-dessus, nous pouvons voir que demander des cookies dans Golang est très simple. En définissant l'objet Request ou en construisant l'en-tête de la requête, nous pouvons définir et obtenir des cookies. Dans le développement réel, nous pouvons apprendre de ces techniques pour mettre en œuvre des opérations de logique métier plus complexes.
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!