以下查询将返回结果,但其中一些将包含limitedSyndication
限制。这不能通过format
或restriction
参数过滤掉。
http://gdata.youtube.com/feeds/api/videos?alt=json-in-script&callback=jQuery.youtube.response&q=Madonna&v=2&format=5&start-index=11&max-results=10
restriction
参数,因为YouTube Data API reference guide声明了以下内容:
默认情况下,API会过滤掉视频 不能在国内播放 您从中发送API请求。
我做错了吗? (除了寻找麦当娜)
如何摆脱limitedSyndication
结果,或者这是一个错误?
答案 0 :(得分:0)
如GData文档中所述,您可以传递一个“限制”参数,该参数将过滤掉您传递的ip无法播放的结果,因此您只需获取用户的IP并将其传递给请求:
要请求可从特定计算机播放的视频,请在您的请求中包含限制参数,并将参数值设置为将播放视频的计算机的IP地址 - 例如限制= 255.255.255.255。 要请求可在特定国家/地区播放的视频,请在您的请求中包含限制参数,并将参数值设置为播放视频的国家/地区的ISO 3166双字母国家/地区代码 - 例如限制= DE。 您应该在任何检索视频列表的请求中包含此参数,包括搜索结果,播放列表,收藏的视频,视频回复等。如果API响应中的视频无法在您用于限制内容可用性的位置播放,则<条目>该标记不包含< media:content>标签。但是,它将包含< yt:state>标记,表示视频受限制。