当前场景
我已经构建了一个应用程序,可以从特定的主题标签中获取 Instagram 图像。
我使用分页来获取所有图像,并将数据(不是图像)本地存储在数据库中。应用程序的第一次调用收集所有图像。后续调用只会获取比本地数据库中最新图像更新的图像。否则,我将需要发出数千个请求来翻阅流行标签上的所有图像。如果图像在应用程序中出现的位置没有太多延迟,则需要每隔几分钟进行一次。
出现的问题是,当用户在旧图像上放置标签时,我的应用程序不会获取这些图像 - 因为 only-fetch-new-images 性能构造。
尝试解决方案
我查看了实时 API,但在我看来,它的构造方式使其无法使用。这是它在标签的实时更新中发送的内容:
{
"subscription_id": "2",
"object": "tag",
"object_id": "nofilter",
"changed_aspect": "media",
"time": 1297286541
}
我原以为会有一个媒体 ID 列表,代表新的/更改的内容,我可以从中获取实际内容 - 但没有。
我目前的解决方案是每隔几分钟获取一次新内容,然后每小时进行一次完整的重新扫描。从用户和性能的角度来看,这都是次优的。
问题
难道真的不能用更优雅的方式来做吗?我很欣赏 Instagram 没有在实时更新中发送完整内容,但发送 ID 不应该是有效载荷大小的问题。在这方面,API 似乎毫无用处——我能想到的唯一用例是“你的标签 watch 上有新内容”通知。
最好的事物,
托本
最佳答案
我对地理搜索所做的是,每次我获得更新包时,我都会查询最近的地理端点。这很有效。我猜这也是标签订阅的想法,您是否尝试过查询最近的 Instagram 标签端点?
/tags/[tag-name]/media/recent
关于Instagram 实时 API 不返回内容 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18589445/