Youtube api 响应中缺少YouTube API V3 recordingDetails对象

Youtube api 响应中缺少YouTube API V3 recordingDetails对象,youtube-api,Youtube Api,我今天从curl尝试了这个YouTube API v3调用: 其他一切正常,但我在响应json中未找到recordingDetails对象: { "kind":"youtube#videoListResponse", "etag":"\"oLweQuB9Vh7wAB9a0AIHg_K-wsM/EuRsJ-sxI3qstP1T58S5Qnb_NIg\"", "items":[ { "id":"ZCJgvabihQ8", "kind":"youtube#video", "e

我今天从curl尝试了这个YouTube API v3调用:

其他一切正常,但我在响应json中未找到recordingDetails对象:

{
"kind":"youtube#videoListResponse",
"etag":"\"oLweQuB9Vh7wAB9a0AIHg_K-wsM/EuRsJ-sxI3qstP1T58S5Qnb_NIg\"",
"items":[
{
    "id":"ZCJgvabihQ8",
    "kind":"youtube#video",
    "etag":"\"oLweQuB9Vh7wAB9a0AIHg_K-wsM/CYNTRL05S4okPzkUfE5LbrRKt9g\"",
    "snippet":{
    "publishedAt":"2013-01-25T13:36:19.000Z",
    "channelId":"UCpVm7bg6pXKo1Pr6k5kxG9A",
    "title":"Weird Nature: Pink Dolphins?",
    "description":"Up to 9 feet long and weighing up to 300 pounds, pink river dolphins           are the largest freshwater dolphins in the world.",
    "thumbnails":{
        "default":{
           "url":"https://i.ytimg.com/vi/ZCJgvabihQ8/default.jpg"
        },
        "medium":{
           "url":"https://i.ytimg.com/vi/ZCJgvabihQ8/mqdefault.jpg"
        },
        "high":{
           "url":"https://i.ytimg.com/vi/ZCJgvabihQ8/hqdefault.jpg"
        }
    },
    "categoryId":"24"
    }
}
]
}

有什么我错过的吗?非常感谢。

并非所有视频都公开录制详细信息,因此如果视频没有这些属性,将不会返回任何内容。通过不返回任何内容,YouTube节省了带宽,并且响应时间可以更快


原始答复:

这看起来像一个合法的bug

录制详细信息列为视频资源中的一个选项 概述页面,但未作为视频列表方法中的有效部分列出 在这里:

通常,当您尝试使用无效零件时,您会得到“400坏” “请求”错误,但recordingDetails仍返回200响应,因此 看起来它真的应该被归还

您应该在此处提交错误报告:


recordingDetails
仅针对明确设置了地理位置或录制时间的视频返回。 (并非所有视频都设置录制时间;它是与发布时间不同的元数据。)

您可以通过调用根据
位置和
位置半径来检索视频列表

然后,使用返回的列表,您可以执行一个调用,包括查询的
id
参数中的所有视频id。然后,您可以将
recordingDetails
指定为“part”,它将起作用

Youtube就是这样做的:


谢谢你,马特。我在上报告了这个问题:实际上,似乎只有在视频中有recordingDetails时才会返回recordingDetails。。。如果没有公共记录详细信息,则不会返回任何内容。编辑我的答案以反映这一点。几天前我尝试了近10个不同的视频,但没有一个返回录制详细信息,我有点运气不好。但我今天试了一段视频,突然出现了录制细节。也许API文档更能说明这一点。现在YouTube已经解决了这个问题,请参阅