2014-06-24 97 views
2

我写了一个使用Tumblr API的JS应用程序。使用Tumblr API获取下一篇或上一篇文章

  • 列表页面向API返回一个返回20个左右结果的请求。
  • 帖子页面请求指定一个ID并返回一个帖子。

对于帖子页面,我想了解下时间后部分信息(例如,你可以使用{PreviousPost}{NextPost}主题建设者做)。

理想情况下,我会得到整个下一篇文章,但ID将是足够的,因为我可以进行第二个电话来获取我需要显示的信息。 (即,作为链接显示的帖子标题)。

据我所知,API中没有任何内容允许我访问这些信息。有没有人知道一种方法来检索这个信息没有我绝对最坏的情况下? (获取所有帖子并循环查看围绕该问题的帖子)

+0

不幸的是,我认为你最糟糕的情况是解决这个问题的唯一方法。我希望我有更好的消息。 – mikedidthis

回答

0

我以两种方式解决这个问题:

  1. 我创建了一个用于存储所有帖子的集合的应用程序范围内的变量。每次我加载更多帖子时,我都会将它们添加到该集合中,并且可以随时访问其内容。如果我加载的帖子页面中的帖子尚未在全局集合中,或者它是当前集合中的最后一篇文章(即下一篇文章不可用),我会向服务器请求更多帖子,以便我可以访问下一篇文章。

  2. 我恢复使用Tumblr主题构建器,并使用@Tony在他的答案中提到的相同方法。我打印链接到下一个和以前的帖子,并用JS解析它们以获得帖子ID。然后我查询API以返回下一个和以前的帖子的细节(单独的调用)。然后我将这些信息注入到我的标记中。

这两种解决方案都需要多个请求,并且目前无法以Tumblr的默认行为完成。第二种解决方案就是将它带入现场。

0

我前段时间有类似的问题。我只是将{previousPost}放入DOM中,如<span class="nextPost-ID">{PreviousPost}</span>,然后使用javascript检索ID。之后,我可以用ID调用API来检索其他信息。

相关问题