add api/list/tag/tag_name_here

This commit is contained in:
Bel LaPointe
2019-04-23 13:56:14 -06:00
parent ba3487852c
commit 7bfae2f004
5 changed files with 69 additions and 2 deletions

View File

@@ -112,6 +112,32 @@ func (ex *Exchange) GetFeedItem(ID string) (string, error) {
return item.Content, nil
}
func (ex *Exchange) ListTag(tag string, n int) (string, error) {
feeds := []*rss.Feed{}
feedNames, err := ex.SClient.List(nsForFeeds, "", true, -1)
if err != nil {
return "", err
}
for _, feedName := range feedNames {
b, err := ex.SClient.Get(nsForFeeds, feedName)
if err != nil {
return "", err
}
feed, err := rss.Deserialize(b)
if err != nil {
return "", err
}
for i := range feed.Tags {
if feed.Tags[i] == tag {
feeds = append(feeds, feed)
}
}
}
b, err := json.Marshal(feeds)
return string(b), err
}
func (ex *Exchange) GetFeedTagRSS(tag string) (string, error) {
feedNames, err := ex.SClient.List(nsForFeeds, "", true, -1)
if err != nil {