ユーザーのサブスクリプション リストを取得しようとしています。一度に50個しか取得できないので、一度に行うバッチ処理を作成したいと思います。
私はJqueryとajaxを使用して、次のようなPOSTリクエストを送信しています:
var query = "<feed xmlns='http://www.w3.org/2005/Atom'";
query += "xmlns:media='http://search.yahoo.com/mrss/'";
query += "xmlns:batch='http://schemas.google.com/gdata/batch'"
query += "xmlns:yt='http://gdata.youtube.com/schemas/2007'>";
for(var i = 0; i < loop; ++i)
{
query += '<entry>';
query += '<id>http://gdata.youtube.com/feeds/api/users/' + youtube_username + '/subscriptions?max-results=50&start-index=' + ((i * 50) + 1) + '&alt=json</id>';
query += "<batch:operation type='query'/>";
query += '</entry>';
}
query += '</feed>';
$.ajax({
type: 'POST',
url: 'http://gdata.youtube.com/feeds/api/users/batch?v=2',
data: query,
contentType:"application/atom+xml",
dataType:"xml",
success: function(data){
alert(data);
}
});
このリクエストを行うと、エラー 400 (不正な URL リクエスト) が発生します。次に、エントリのこの URL を試しました。
query += '<id>http://gdata.youtube.com/feeds/api/users/' + youtube_username + '/subscriptions/</id>';
しかし、私はこのエラーが発生しました:
要素タイプ「フィード」の後には、属性指定「>」または「/>」が続く必要があります。
ありがとう、良い一日を、ケビン