我正在使用YouTube Data API for .NET .
我在YouTubeRequest class上调用GetRelatedVideos function并返回25个与视频相关的视频,如下所示:
Video video = Request.Retrieve<Video>(
new Uri(String.Format("https://gdata.youtube.com/feeds/api/videos/{0}{1}",
vID ,"?max-results=50&start-index=1")));
Feed<Video> relatedVideos = Request.GetRelatedVideos(video);
return FillVideoInfo(relatedVideos.Entries);
这是请求链接:
https://gdata.youtube.com/feeds/api/videos/1FJHYqE0RDg?max-results=50&start-index=1
但是我得到了这个错误
此资源不支持“max-results”参数
如果我只是使用:
https://gdata.youtube.com/feeds/api/videos/1FJHYqE0RDg
然后我收到25个视频 . 但我希望获得50个视频和页面以获取更多信息 . 我能够得到以下网址的结果:
https://gdata.youtube.com/feeds/api/videos/1FJHYqE0RDg/related?max-results=50&start-index=1
在这里我得到了回复,但是我只获得了25个视频,即使我通过了50个 max-results
参数 .
如何一次为特定视频获取50个相关视频,而不是默认25(50是 max-results
的最大值) .
1 回答
您应该使用YouTubeRequest class上的属性为您设置URL字符串,而不是自己创建URL字符串 .
例如,在获取Video实例时,您不希望在YouTubeRequestSettings实例上指定PageSize property,如下所示:
但是,在调用GetRelatedVideos method时,您希望使用附加到
YouTubeRequest
实例的不同YouTubeRequestSettings
:现在它将返回50个视频 . 如果您在获取视频时尝试设置
PageSize
属性,则会收到错误,因为获取单个视频时max-results
参数无效 .然后,您可以写出条目的计数,以验证返回50个:
结果将是:
第一页> 50个相关视频 .