0

これをYouTubeAPIに投稿しようとしているので、本当にイライラしています。ただし、Ajaxを使用すると、構文が予期しないt変数エラーが発生します。

コードは次のとおりです。

$.ajax({
url:"gdata.youtube.com/feeds/api/users/default/subscriptions",
type:"POST",
data:"<?xml version='1.0' encoding='UTF-8'?>
<entry xmlns='http://www.w3.org/2005/Atom'          xmlns:yt='http://gdata.youtube.com/schemas/2007'>
<category scheme='http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat'
term='channel'/>
<yt:username>GoogleDevelopers</yt:username>
</entry>",
Authorization: token,
GData-Version: '2',
X-GData-Key:     'key=MYDEVKEY',
contentType:"application/atom+xml",
dataType:"xml",
success: function(){
alert('subscribd');
}
});

そして、いくつかの調査で、コードの最初の行がエラーの原因であることがわかりました。そのデータをAPIに投稿する方法はありますか?ああ、ドキュメントaはhttps://developers.google.com/youtube/2.0/developers_guide_protocol_subscriptions#Adding_a_subscriptionにあります。このデータを投稿する方法についてサポートをいただけますか?ありがとう!

4

1 に答える 1

0

私のアドバイスは、YouTUbe GDataAPIv2を使用してこれを行わないようにすることです。これを機能させることは確かに可能ですが、 CORSをサポートするブラウザーで実行されているJavaScriptに依存しており、最新バージョンを除くすべてのバージョンのInternetExplorerを除外します。

GData API v2を使用してこれを実行する場合は、XML本文ではなくJSON本文を使用してPOSTを実行し、POSTURLに含める方が簡単な場合がありalt=jsonます。ここには、 v2に対してJSONボディを使用してPOSTリクエストを作成する例と、他の例があります。

ただし、私が本当にお勧めするのは、サブスクリプションを追加するためのsubscriptions.insert()メソッドを持つYouTube DataAPIv3を使用することです。使用できる優れたJavaScriptクライアントライブラリがあり、OAuth 2の処理を処理するだけでなく、さまざまなブラウザで機能する方法でAPIリクエストを作成します。

于 2013-04-01T15:51:18.973 に答える