YouTube API 的最大 HTTP GET 请求长度是多少?

What is the maximum HTTP GET request length for a YouTube API?

我想使用 youtube video:list api 在单个请求中获取多个视频的详细信息。根据 api documentation,我可以将逗号分隔的 videoId 列表作为 id 参数发送。但是可能的最大长度是多少?

我知道 GET request limit 依赖于服务器和客户端。在我的例子中,我是从服务器端而不是浏览器发出请求的。因此,可以在我这边配置最大长度。但是 youtube 可接受的最大长度是多少?

更新: 虽然无法找到官方文档,但根据 Tempus 所执行的测试,当前限制为 50 个 ID。我在下面添加了一个代码,其中包含 51 个不同的视频 ID(其中 1 个已评论),供以后想要查看的人使用。

var key = prompt("Please enter your key here");
if (!key) {
 alert("No key entered");
} else {
 var videoIds = ["RgKAFK5djSk",
  "fRh_vgS2dFE",
  "OPf0YbXqDm0",
  "KYniUCGPGLs",
  "e-ORhEE9VVg",
  "nfWlot6h_JM",
  "NUsoVlDFqZg",
  "YqeW9_5kURI",
  "YQHsXMglC9A",
  "CevxZvSJLk8",
  "09R8_2nJtjg",
  "HP-MbfHFUqs",
  "7PCkvCPvDXk",
  "0KSOMA3QBU0",
  "hT_nvWreIhg",
  "kffacxfA7G4",
  "DK_0jXPuIr0",
  "2vjPBrBU-TM",
  "lp-EO5I60KA",
  "5GL9JoH4Sws",
  "kOkQ4T5WO9E",
  "AJtDXIazrMo",
  "RBumgq5yVrA",
  "pRpeEdMmmQ0",
  "YBHQbu5rbdQ",
  "PT2_F-1esPk",
  "uelHwf8o7_U",
  "KQ6zr6kCPj8",
  "IcrbM1l_BoI",
  "vjW8wmF5VWc",
  "PIh2xe4jnpk",
  "QFs3PIZb3js",
  "TapXs54Ah3E",
  "uxpDa-c-4Mc",
  "oyEuk8j8imI",
  "ebXbLfLACGM",
  "kHSFpGBFGHY",
  "CGyEd0aKWZE",
  "rYEDA3JcQqw",
  "fLexgOxsZu0",
  "450p7goxZqg",
  "ASO_zypdnsQ",
  "t4H_Zoh7G5A",
  "QK8mJJJvaes",
  "QcIy9NiNbmo",
  "yzTuBuRdAyA",
  "L0MK7qz13bU",
  "uO59tfQ2TbA",
  "kkx-7fsiWgg",
  "EgqUJOudrcM",
 // "60ItHLz5WEA" // 51st VideoID. Uncomment it to see error
 ];
 var url = "https://www.googleapis.com/youtube/v3/videos?part=statistics&key=" + key + "&id=" + videoIds.join(",");
 var xmlHttp = new XMLHttpRequest();
 xmlHttp.onreadystatechange = function() {
  (xmlHttp.readyState == 4) && alert("HTTP Status code: " + xmlHttp.status);
 }
 xmlHttp.open("GET", url, true);
 xmlHttp.send(null);
}

答案是 50。原因是,这就是您得到的全部。

由于某些调用可能会根据搜索条件和可用结果获得相当多的结果,因此他们将 "maxResults" 限制在 50 个。 对此的接受是最多 100 个 CommentThreads。

这是(如您所知)加快页面加载和调用时间。

编辑:
这可以在"Try api"部分进行测试HERE
您需要将 50 个视频 ID 放入 "id" 字段中,以逗号分隔。
然后再广告一个ID得到51再测试。您应该会收到“400”响应。

P.S。他们不需要是唯一的 ID。所以有一些然后根据需要复制和粘贴多次;-)