Add ghost backend get-page-by-slug request

This commit is contained in:
2021-12-03 03:58:09 +01:00
parent ea9d93443f
commit 7fbb921516
+16 -1
View File
@@ -10,7 +10,8 @@ import (
) )
// Ghost content data URIs: // Ghost content data URIs:
const ( const (
ghostAPIPrefix = "/ghost/api/v3/" ghostAPIPrefix = "/ghost/api/v3/"
ghostAPIGetPageBySlug = ghostAPIPrefix + "content/pages/slug/%s/"
) )
// HTTPClient implements the ghost http client // HTTPClient implements the ghost http client
@@ -80,5 +81,19 @@ func (g *HTTPClient) doQuery(method string, v easyjson.Unmarshaler, params ...Qu
err = easyjson.Unmarshal(resBytes, v) err = easyjson.Unmarshal(resBytes, v)
return
}
// GetPageBySlug returns the only one page using slug filter
func (g *HTTPClient) GetPageBySlug(slug string) (pages *Pages, err error) {
pages = &Pages{}
method := fmt.Sprintf(ghostAPIGetPageBySlug, slug)
err = g.doQuery(method, pages)
if err != nil {
pages = nil
}
return return
} }