diff options
Diffstat (limited to 'model/client.go')
-rw-r--r-- | model/client.go | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/model/client.go b/model/client.go index 804b0d218..54f143cfe 100644 --- a/model/client.go +++ b/model/client.go @@ -993,12 +993,19 @@ func (c *Client) GetFileInfo(url string) (*Result, *AppError) { } } -func (c *Client) GetPublicLink(data map[string]string) (*Result, *AppError) { - if r, err := c.DoApiPost(c.GetTeamRoute()+"/files/get_public_link", MapToJson(data)); err != nil { +func (c *Client) GetPublicLink(filename string) (*Result, *AppError) { + if r, err := c.DoApiPost(c.GetTeamRoute()+"/files/get_public_link", MapToJson(map[string]string{"filename": filename})); err != nil { return nil, err } else { + var link string + if body, err := ioutil.ReadAll(r.Body); err == nil { + link = string(body) + } else { + // all the other Client methods return an empty string on invalid json, so we can too + } + return &Result{r.Header.Get(HEADER_REQUEST_ID), - r.Header.Get(HEADER_ETAG_SERVER), MapFromJson(r.Body)}, nil + r.Header.Get(HEADER_ETAG_SERVER), link}, nil } } |