编程语言
首页 > 编程语言> > javascript-从tumblr博客获取所有唯一标签

javascript-从tumblr博客获取所有唯一标签

作者:互联网

根据Tumblr API V2,您可以通过Tumblr Blog和Vice Versa使用标签来获取帖子和其他详细信息

我想获取所有标签(唯一标签)的列表,而不考虑博客文章

因此,如果我有10个帖子标记为Technology,Web,而3个帖子标记为JavaScript,Web
-我想以一种可以给我技术,网络和JavaScript的方式查询我的博客

比如说一个数组-results.posts.tags = [“ Technology”,“ Web”,“ JavaScript”]
或对象,我可以深入研究以找到标签,然后在循环中进行迭代.

解决方法:

我从未使用过Tumblr API,但看起来您应该能够构建标签列表-但没有内置方法.首先,您必须通过查询/ info方法1查找博客中的帖子总数.该网址是:

api.tumblr.com/v2/blog/{base-hostname}/info?api_key={key}

从中获取响应并将其解码为一个对象(jQuery,extjs,w / e可以使用),您可以找到帖子总数的帖子字段.使用它,您可以开始使用/ posts方法一次撤回20个帖子,最大数量根据API.该网址是:

api.tumblr.com/v2/blog/{base-hostname}/posts[/type]?api_key={key}&[optional-params=]

您可能想省略/ type,但是您需要在optional-params中指定offset.使用偏移量,您可以一次浏览所有帖子,一次20个,直到全部下载完为止(从/ info查询中获得的数量).在下载帖子时,只需跟踪获得的标签即可.

不幸的是,您必须下载帖子的正文以获取标签列表,但是我看不到任何其他提供标签的方法,也没有选择抑制正文并仅查看元数据的选项.帖子.

**编辑**

1:根据Felix的评论,已知帖子/信息返回的数量有时会略有偏离.如果期望值很高,则需要确保仅循环显示实际收到的结果,而不是预期的结果.要处理预期数量偏低的情况,您可以在结尾处进行一次查询,然后查看是否得到任何结果.在这一点上,尽管您可能会考虑将/ info查询全部放在一起,然后只查询/ post,直到没有更多结果为止.

2:Per Felix的第二条评论,即使API列出了您可以一次拉出多少个帖子的值范围(默认为20个,默认值为1-20个),据说它最多可以接受50个.一次拉出50个结果可能会加快速度事情会增加/降低带宽,但这会使您的代码执行起来更加复杂.由于它是一个未记录的功能(请阅读:可能只是一个错误),因此无法保证它将继续运行.因此,您可以尝试一次查询50个,但需要准备处理400个错误代码或类似的代码,以防它们使服务与API匹配,然后默认为20.

标签:javascript,tumblr
来源: https://codeday.me/bug/20191201/2078323.html