Heim >Backend-Entwicklung >Golang >Wie verwalte ich Cookies in Go-HTTP-POST-Anfragen für die Website-Anmeldung und den Seitenzugriff?

Wie verwalte ich Cookies in Go-HTTP-POST-Anfragen für die Website-Anmeldung und den Seitenzugriff?

Linda Hamilton
Linda HamiltonOriginal
2024-12-31 03:24:09739Durchsuche

How to Manage Cookies in Go HTTP POST Requests for Website Login and Page Access?

Go HTTP Post und Verwendung von Cookies

Problem: Integration von Cookies in eine Go-Anwendung, um die Anmeldung auf der Website und die anschließende Anmeldung zu erleichtern Seitenzugriff.

Betrachten Sie das folgende Beispiel Code:

func Login(user, password string) string {
    postUrl := "http://www.pge.com/eum/login"

    values := make(url.Values)
    values.Set("user", user)
    values.Set("password", password)

    resp, err := http.PostForm(postUrl, values)
    if err != nil {
        log.Fatal(err)
    }
    defer resp.Body.Close()

    // Store cookies here!
    return "Hello"
}

func ViewBill(url string, cookies) string {
    // Access page using cookies!
}

Lösung: In Go wurde die Cookie-Verwaltung in Version 1.1 über das Paket net/http/cookiejar eingeführt.

Erweitern Sie Ihren Code mit der Cookie-Verwaltung Funktionen:

import (
    "net/http"
    "net/http/cookiejar"
)

jar, err := cookiejar.New(nil)
if err != nil {
    // Handle error
}

client := &http.Client{
    Jar: jar,
}

Dieser Client, der mit der Jar-Implementierung der Keksdose ausgestattet ist, kann jetzt Cookies zur Verwendung bei nachfolgenden Anfragen speichern, was die Verwendung erleichtert Reibungslose Anmeldung und Seitennavigation.

Das obige ist der detaillierte Inhalt vonWie verwalte ich Cookies in Go-HTTP-POST-Anfragen für die Website-Anmeldung und den Seitenzugriff?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn