package libkiwi import ( "net/http" "net/url" ) // http.CookieJar interface wrapper to add convenience functions. type jar struct { http.CookieJar } func (j *jar) GetCookie(u *url.URL, name string) *http.Cookie { cookies := j.Cookies(u) for _, c := range cookies { if c.Name == name { return c } } return nil } func (j *jar) SetCookie(u *url.URL, newCookie *http.Cookie) { cookies := j.Cookies(u) for i, c := range cookies { if c.Name == newCookie.Name { cookies[i] = newCookie j.SetCookies(u, cookies) return } } // Append if not already existing. cookies = append(cookies, newCookie) j.SetCookies(u, cookies) }