Timeline形式API简述

11 篇文章 0 订阅

Timeline形式API简述

Timeline英文原版文档(网页版)

问题起因:假设有10条微博,每页5条,正常情况下两页完成浏览。

image

然而,微博内容不断更新的情况下,当你看完第一页内容时,更新了两条内容11和12。此时,当你翻到第二页时,看到的就会是第三到第七条内容。如果更新的内容超过五条,将会出现非常尴尬的情况。

image

解决方法:每次请求内容时根据内容id相对定位,而不是相对于列表顶部绝对定位。
(1)添加max_id参数
第一次请求时,记录最低的内容ID,将此ID最为max_id参数传递给下一个请求,服务端将只返回ID低于max_id的内容。注意,当返回内容id包含max_id时,该条内容会再次返回。

image

实际情况下,应该将max_id - 1 作为下一页返回的第一条内容的id

image

(2)添加since_id参数
假设我们已经处理了10条数据,现在数据更新到了第18条,当我们下滑请求最新内容时,服务端第一页将返回第14到第18条内容,而第二此请求则会返回第9到第13条内容,但是第9条和第10条我们之前已经处理过了,这样就出现了重复处理同一条内容的情况,降低了效率。

image

通过设置since_id参数我们可以避免这种情况发生。将since_id设定为我们已经处理过的微博的最大ID,移动端发送请求时,服务端只返回id大于since_id的微博内容。

image

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值