Youtube API没有返回更新的结果



我正在开发一个简单的视频应用程序,它将触发意图从特定频道获取任何新的视频更新,使用Youtube Api V3

search.setKey(Constant.DEVELOPER_KEY);
search.setChannelId(channelID);
search.setOrder("date");
search.setPublishedAfter(new DateTime(yesterday));
search.setType("video");
search.setFields("items(id/kind,id/videoId,snippet/title,snippet/publishedAt)");
search.setMaxResults((long) 50);
SearchListResponse searchResponse = search.execute();
List<SearchResult> searchResultList = searchResponse.getItems();

问题:它返回给我一个未更新的结果列表。

URL中的示例:https://www.googleapis.com/youtube/v3/search?part=snippet&order=date&type=video&channelId=UC52X5wxOL_s5yw0dQk7NtgA&key=your_api_key&maxResults=50

问题描述:

  1. 对这种行为进行了几天的监控,我发现,首先,我总能在这个频道中找到一些其他视频,通过进入Youtube网站本身。这个视频还需要30到60分钟才能出现在我的搜索结果中。

  2. 嗯,延迟对我来说实际上是好的,我不明白的是,有时,假设有视频1,视频2和视频3,其中1在2之前上传,2在3之前上传。所以在上面的例子中,我希望得到的结果是(在我指定的按日期排序的URL中)3-2-1,或2-1,或只有1。但奇怪的是,结果是3比1。will可能还要半个小时才来。我的意思是,如果延误是一个问题,至少它应该以适当的顺序出现在列表中?

预期解决方案:要有一个搜索结果,将按日期准确排序,以便每当我尝试重新查询视频时,我只需要得到我最后一个视频检索后发布的内容。而不是像我的例子那样从昨天开始得到所有的东西。

谢谢你的时间,我真的在寻找一个解决方案。

所以首先API的V3目前是实验性的,我不建议使用它,直到它被签署,等等。

其次,我从来都不是客户端库的粉丝,我更喜欢直接调用API,这样你就可以确保调用是按照你想要的方式进行的。因此,例如,这里有一个简单的调用,以按照发布的顺序从我的频道中检索视频:http://gdata.youtube.com/feeds/api/videos?orderby=published&author=ahmednuaman

我建议现在使用这种方法,并查看交互式API演示(http://gdata.youtube.com/demo/index.html)来酝酿调用并确认测试正在返回所需的数据。

相关内容

  • 没有找到相关文章