Das Setzen von Cookies mit Go's net/http-Paket kann eine unkomplizierte Aufgabe sein. Eine häufige Gefahr besteht jedoch darin, Cookies für das Anforderungsobjekt und nicht für die Antwort zu setzen.
So können Sie ein Cookie mit net/http richtig setzen:
package main import ( "fmt" "net/http" "time" ) func indexHandler(w http.ResponseWriter, req *http.Request) { expire := time.Now().AddDate(0, 0, 1) cookie := &http.Cookie{ Name: "test", Value: "tcookie", Path: "/", Domain: "www.domain.com", Expires: expire, RawExpires: expire.Format(time.UnixDate), MaxAge: 86400, Secure: true, HttpOnly: true, SameSite: http.SameSiteStrictMode, Raw: "test=tcookie", Unparsed: []string{"test=tcookie"}, } http.SetCookie(w, cookie) // Set the cookie on the response fmt.Fprint(w, "Hello world!") } func main() { http.HandleFunc("/", indexHandler) http.ListenAndServe(":80", nil) }
Hier Beispiel:
Das obige ist der detaillierte Inhalt vonWie setze ich Cookies mit dem net/http-Paket von Go richtig?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!