我有一段代码可以从我的youtube watchLater播放列表中删除一个项目。这在两周前还可以正常工作,现在我在youtube上收到了一个404错误。
以下是请求和响应的顺序(当然,去掉了身份验证细节):
获取播放列表项目请求:
得到https://www.googleapis.com/youtube/v3/playlistItems?fields=items/id&part=片段&playlistId=WLlue5EIJLscoxMgEkEZfq_A
获取播放列表项响应:
{
"items": [
{
"id": "V0xsdWU1RUlKTHNjb3hNZ0VrRVpmcV9BLjU2QjQ0RjZEMTA1NTdDQzY="
}
]
}
删除请求:
删除https://www.googleapis.com/youtube/v3/playlistItems?id=V0xsdWU1RUlKTHNjb3hNZ0VrRVpmcV9BLjU2QjQ0RjZEMTA1NTdDQzY=
删除响应:
{
"error": {
"errors": [
{
"domain": "youtube.playlistItem",
"reason": "playlistItemNotFound",
"message": "Playlist item not found.",
"locationType": "parameter",
"location": "id"
}
],
"code": 404,
"message": "Playlist item not found."
}
}
当我通过youtube网站查看播放列表时,我可以看到该项目没有被删除。
api的文档表明我做的每件事都是正确的。在调试时,我注意到播放列表项id是一个base64编码的字符串;我使用编码和解码的字符串得到404。
这个问题并不局限于一个特定的项目;似乎我放在手表中的任何项目Later播放列表都无法删除。我没有任何问题删除项目从其他播放列表;只有watchLater有这个问题。
有人知道发生了什么事吗?
编辑(2016年10月):谷歌表示"稍后观看"播放列表已被弃用。看见https://developers.google.com/youtube/v3/revision_history
问题在谷歌问题跟踪器中关闭:
将此问题标记为"过时",因为"稍后观看"播放列表已被弃用。有关详细信息,请参阅修订历史:https://developers.google.com/youtube/v3/revision_history
此外,检索频道观看历史记录或稍后观看播放列表的播放列表详细信息(playlists.list)或播放列表项目(playlistItems.list)的请求现在返回空列表。对于新值HL和WL,以及API客户端可能已经存储的任何观看历史记录或稍后观看播放列表ID,这种行为都是正确的。