diff --git a/internal/piwigo/config.go b/internal/piwigo/config.go index bea08bc..3c0d385 100644 --- a/internal/piwigo/config.go +++ b/internal/piwigo/config.go @@ -58,7 +58,8 @@ func (p *Piwigo) LoadConfig() (err error) { } err = json.Unmarshal(b, &p) - if p.Url == "" || p.Token == "" { + + if p.Url == "" || p.Token == nil { err = errors.New("missing configuration url or token") } diff --git a/internal/piwigo/post.go b/internal/piwigo/post.go index 20d7c74..b905dfe 100644 --- a/internal/piwigo/post.go +++ b/internal/piwigo/post.go @@ -34,8 +34,8 @@ func (p *Piwigo) Post(method string, form *url.Values, resp interface{}) error { } req.Header.Set("Content-Type", "application/x-www-form-urlencoded") - if p.Token != "" { - req.AddCookie(&http.Cookie{Name: "pwg_id", Value: p.Token}) + if p.Token != nil { + req.AddCookie(p.Token) } r, err := http.DefaultClient.Do(req) @@ -60,7 +60,7 @@ func (p *Piwigo) Post(method string, form *url.Values, resp interface{}) error { for _, c := range r.Cookies() { if c.Name == "pwg_id" { - p.Token = c.Value + p.Token = c break } } diff --git a/internal/piwigo/struct.go b/internal/piwigo/struct.go index 32da85b..57e290b 100644 --- a/internal/piwigo/struct.go +++ b/internal/piwigo/struct.go @@ -1,8 +1,10 @@ package piwigo +import "net/http" + type Piwigo struct { - Url string `json:"url"` - Token string `json:"token"` + Url string `json:"url"` + Token *http.Cookie `json:"token"` } type PiwigoResult struct {