2014-01-31 89 views
0

我試圖使用YouTube v2 API從用戶批量刪除他的YouTube收藏夾中的視頻。 (另請參閱https://developers.google.com/youtube/2.0/developers_guide_protocol_batch_processing批量刪除YouTube收藏夾中的視頻播放列表

批量發佈視頻到收藏夾很好;我也可以從收藏夾中刪除單個視頻而不會出現問題(這就排除了驗證問題)。

我的請求體是如下,其中VIDEOID1VIDEOID2<yt:favoriteId> IDS在其相應的視頻XML發現:

<?xml version="1.0" encoding="UTF-8"?> 

<feed xmlns='http://www.w3.org/2005/Atom' xmlns:media='http://search.yahoo.com/mrss/' xmlns:batch='http://schemas.google.com/gdata/batch' xmlns:yt='http://gdata.youtube.com/schemas/2007'> 
    <batch:operation type="delete"/> 
    <entry><id>VIDEOID1</id></entry> 
    <entry><id>VIDEOID2</id></entry> 
</feed> 

這是我回來,不過響應,其中UserID ofcourse是的用戶ID

<?xml version='1.0' encoding='UTF-8'?> 

<feed xmlns='http://www.w3.org/2005/Atom'> 
    <id>https://gdata.youtube.com/feeds/api/users/USERID/favorites/batch/BATCHID</id> 
    <updated>2014-01-31T14:50:54.948Z</updated> 
    <category scheme='http://schemas.google.com/g/2005#kind' term='http://gdata.youtube.com/schemas/2007#favorite'/> 
    <title>Batch Feed</title> 
    <entry xmlns:batch='http://schemas.google.com/gdata/batch'>  
     <id>VIDEOID1</id> 
     <updated>2014-01-31T14:50:54.948Z</updated> 
     <title>Error</title> 
     <content>Invalid entry Id/Uri</content> 
     <batch:status code='400' reason='Invalid entry Id/Uri'/> 
    </entry> 
    <entry xmlns:batch='http://schemas.google.com/gdata/batch'> 
     <id>VIDEOID2</id> 
     <updated>2014-01-31T14:50:54.949Z</updated> 
     <title>Error</title> 
     <content>Invalid entry Id/Uri</content> 
     <batch:status code='400' reason='Invalid entry Id/Uri'/> 
    </entry> 
</feed> 

它指出Invalid entry Id/Uri因爲我嘗試刪除,而磨片視頻:用戶和BatchID是BatchID由服務給予n我通過具有相同ID的單數刪除請求刪除它們,它起作用。

是批量刪除不支持的收藏夾視頻,還是我錯過了什麼?

回答

0

我找到了工作,由於這個問題和答案:Batch deleting videos using YouTube API and HTTpWebRequest

訣竅是使用用戶的userId而不是default,並用它來完成視頻的網址爲id

批URL看起來是這樣的:

https://gdata.youtube.com/feeds/api/users/USERID/favorites/batch?v=2&alt=json 

請求如下:

<?xml version="1.0" encoding="UTF-8"?> 

<feed xmlns='http://www.w3.org/2005/Atom' xmlns:media='http://search.yahoo.com/mrss/' xmlns:batch='http://schemas.google.com/gdata/batch' xmlns:yt='http://gdata.youtube.com/schemas/2007'> 
    <batch:operation type="delete"/> 
    <entry> 
     <id>https://gdata.youtube.com/feeds/api/users/USERID/favorites/VIDEOID1?v=2</id> 
    </entry> 
    <entry> 
     <id>https://gdata.youtube.com/feeds/api/users/USERID/favorites/VIDEOID2?v=2</id> 
    </entry> 
</feed>