Youtube api Youtube API v3-特定频道的相关视频

Youtube api Youtube API v3-特定频道的相关视频,youtube-api,Youtube Api,我只想从上传者的频道获取相关视频,但使用relatedToVideoId进行搜索时,如果指定,则会忽略channelId 例如,https://www.googleapis.com/youtube/v3/search?channelId=UCgiDRy6oyLanAcFeM4-_OYA&relatedToVideoId=eWXm5ZKGXSw&part=snippet,id&type=video&maxResults=10&key={your_api_key} 和https://www.goog

我只想从上传者的频道获取相关视频,但使用
relatedToVideoId
进行搜索时,如果指定,则会忽略
channelId

例如,
https://www.googleapis.com/youtube/v3/search?channelId=UCgiDRy6oyLanAcFeM4-_OYA&relatedToVideoId=eWXm5ZKGXSw&part=snippet,id&type=video&maxResults=10&key={your_api_key}

https://www.googleapis.com/youtube/v3/search?relatedToVideoId=eWXm5ZKGXSw&part=snippet,id&type=video&maxResults=10&key={your\u api\u key}

两者都将返回相同的结果集


我是做错了什么,还是这是预期的行为?

你没有做错任何事——然而,这是否是预期的,只能由工程团队来回答。但relatedToVideoId参数似乎被设计为忽略所有其他搜索过滤器(甚至“q”)


这似乎是合乎逻辑的,因为它可能是在播放视频时使用生成相关视频缩略图的相同算法(换句话说,它专门用作关键字或频道关系之外视频的发现工具)。

上述答案是正确的,但是,如果您仍然希望使用此方法并区分频道的视频以仅显示您的视频,您可以这样做: (用jQuery编写,但同样的概念也适用于其他语言)

var channelTitle = item.snippet.channelTitle;
var result = "";

if(channelTitle === "Your Channel Name")
{
    // print results
    $('.related-video').append(result);
    $(item).show(); // show item 
}
else // does not match channel name
{
    $(item).hide(); // hide item
}