YouTube API“已发布”过滤器似乎无效

时间:2013-04-01 17:47:09

标签: youtube-api

我正在尝试使用YouTube API返回最近发布的视频,但我使用的过滤器似乎无法按预期工作。

此API调用仅返回两个视频,而在3月1日之后应该发布更多的视频:

  

https://gdata.youtube.com/feeds/api/videos?q=&fields=entry[xs:dateTime(published)%20%3E%20xs:dateTime('2013-03-01T12:00:00.000Z')]

但是,如果我添加查询字符串,则会返回更多结果。例如:

  

https://gdata.youtube.com/feeds/api/videos?q=surfing&fields=entry[xs:dateTime(published)%20%3E%20xs:dateTime('2013-03-01T12:00:00.000Z')]

任何人都知道为什么?我是否应该使用另一种方法来获取最新发布的视频而不管查询字符串?

1 个答案:

答案 0 :(得分:1)

我理解您的困惑,但这不是fields=参数的用途。 documentation应该有希望清除,但总而言之,以这种方式使用fields=相当于在没有fields=参数的情况下发出请求,然后过滤该请求的结果以便它仅包含与您的过滤条件匹配的条目。

因此,如果您的fields=请求通常会返回25个特定视频,则向其添加fields=将为您提供包含介于0到25个视频之间的响应 - 所有不匹配的视频都会被过滤进行。

您可以使用http://gdata.youtube.com/feeds/api/videos?v=2&orderby=published

请求最近发布的视频供稿,而无需任何其他过滤器