使用 Go 的 net/http 套件設定 cookie 可能是一項簡單的任務。然而,一個常見的陷阱是嘗試在請求物件上設定 cookie,而不是回應。
以下是如何使用net/http 正確設定cookie:
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) }
在此範例:
以上是如何使用Go的net/http套件正確設定cookies?的詳細內容。更多資訊請關注PHP中文網其他相關文章!