CookieにはMaxAgeという、有効期限を秒数で指定する属性があります。
Goでは、このMaxAgeにマイナス値か0を設定することで、対象のCookieを削除することができます。
func main() { ... http.HandleFunc("/delete", delete) // 「/delete」にアクセスしたらdeleteを実行 http.Handle("/favicon.ico", http.NotFoundHandler()) http.ListenAndServe(":8080", nil) } func delete(w http.ResponseWriter, req *http.Request) { c, err := req.Cookie("test") // クライアントから送信されたCookieを格納 if err == http.ErrNoCookie { http.Redirect(w, req, "/set", http.StatusBadRequest) } c.MaxAge = -1 // 格納した変数cのMaxAgeフィールドに-1を指定 http.SetCookie(w, c) // 変更を反映するためにcをCookieにセット http.Redirect(w, req, "/index", http.StatusSeeOther) }