使用YouTube API从播放列表中删除视频
我试图使用YouTube API从我的某个播放列表中删除视频。我正确地验证,但我还是发现了以下错误:使用YouTube API从播放列表中删除视频
{
"code" : 403,
"errors" : [ {
"domain" : "youtube.playlistItem",
"location" : "id",
"locationType" : "parameter",
"message" : "Forbidden",
"reason" : "playlistItemsNotAccessible"
} ],
"message" : "Forbidden"
}
我按照这里的说明:https://developers.google.com/youtube/v3/docs/playlistItems/delete
但我不明白的是你应该放在哪里播放列表ID。我看到你放置videoID的位置,但是它如何知道要删除哪个播放列表?我认为这是我的问题。这里是他们的榜样的代码,我的是相同的:
// Sample java code for playlistItems.delete
public static void main(String[] args) throws IOException {
YouTube service = getYouTubeService();
try {
HashMap<String, String> parameters = new HashMap<>();
parameters.put("id", "REPLACE_ME");
parameters.put("onBehalfOfContentOwner", "");
YouTube.PlaylistItems.Delete playlistItemsDeleteRequest = youtube.playlistItems().delete(parameters.get("id").toString());
if (parameters.containsKey("onBehalfOfContentOwner") && parameters.get("onBehalfOfContentOwner") != "") {
playlistItemsDeleteRequest.setOnBehalfOfContentOwner(parameters.get("onBehalfOfContentOwner").toString());
}
playlistItemsDeleteRequest.execute();
}
}
还有的甚至没有在页面上他们的“试一试”部分,这也给了同样的错误了playlistID的输入。只是onBehalfOfContentOwner和id。输入videoID并在页面上执行后,我会得到相同的错误。我应该在哪里放置播放列表ID?
想通了。并澄清:我试图从我自己的播放列表中删除视频,并且我的身份验证正确(我可以添加视频就好了)。
基本上,我使用了错误的videoId。我试图在播放视频时使用您在网址中看到的短片(例如qNqfYtd3HTg)。您需要使用从PlaylistItems.list返回的内容(例如,UEwzdmpFaWdSbm5rQ3hPN29qNXFjM1c0c20zNVlRSC1hQi5DNUEzOUFFNkIyOUUzOTRC)。后者包含有关视频所在播放列表的信息。这就是为什么当您从播放列表中删除视频时,无需指定playlistId,只需要这一长视频标识即可。
这是VideoID的不来删除从播放列表中的视频时使用:
youtube.playlistItems().list("contentDetails,snippet").execute().items[0].snippet.resourceId.videoId
这是VideoID的使用方法:
youtube.playlistItems().list("contentDetails,snippet").execute().items[0].id
当您检查[评论在帖子中](https://stackoverflow.com/questions/32607448/youtube-api-v3-error-403-playlistitemsnotaccessible),据说你不能在别人播放列表中做任何改变或改动。无法更新(插入/删除)来自其他用户播放列表的视频,除非该用户允许您的应用程序。请查看此[文档](https://developers.google.com/youtube/v3/docs/errors#playlistItems_youtube.playlistItems.delete)以获取错误说明。 –
我试图从我自己的播放列表中删除视频,并且我的身份验证正确(我可以添加视频就好了)。不过,我明白了。我很快就会在这里发表一个答案。基本上,我使用了错误的videoId。当您播放视频时,我正尝试使用您在网址中看到的短片。您需要使用从PlaylistItems.list返回的内容。 –