0

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はどこに置くべきですか?

+0

あなたは[コメントをチェックすると投稿から](https://stackoverflow.com/questions/32607448/youtube-api-v3-error-403-playlistitemsnotaccessible)、それはあなたが他のプレイリストに変更や変更を加えることはできないと言われています。そのユーザーがアプリケーションに許可を与えない限り、他のユーザーのプレイリストからビデオを更新(挿入/削除)することはできません。エラーの説明については、この[documentation](https://developers.google.com/youtube/v3/docs/errors#playlistItems_youtube.playlistItems.delete)をご覧ください。 –

+0

私は自分のプレイリストからビデオを削除しようとしていましたが、私は正しく認証されていました(私はビデオをうまく追加できました)。私はそれを考え出した。私はまもなく回答を掲載します。基本的に、間違ったvideoIdを使用していました。私はあなたがビデオを再生するときにURLに表示される短いものを使用しようとしていました。代わりにPlaylistItems.listから返されたものを使用する必要があります。 –

答えて

0

明確にするために、私自身のプレイリストからビデオを削除しようとしていましたが、正しく認証されていました(ビデオをうまく追加できました)。

基本的に、間違ったvideoIdを使用していました。動画を再生するときにURLに表示される短いものを使用しようとしていました(例: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

関連する問題