1

次のコード スニペットを使用して Vimeo の REST API サービスを呼び出しています。データは 200 OK 呼び出しで null として出力されます。

    $.ajax({
        url:'http://vimeo.com/api/rest/v2?format=json&method=vimeo.videos.getInfo&video_id=7100569',
        dataType:'json',
        success:function(data){
            alert(data);
        }
    });

ブラウザにURLをコピーして貼り付けると、(http://vimeo.com/api/rest/v2?format=json&method=vimeo.videos.getInfo&video_id=7100569)ダウンロードするファイルが表示されます。動作するJavaScriptのサンプルのサンプルをチェックアウトしました

var url='http://vimeo.com/api/rest/v2?format=json&method=vimeo.videos.getInfo&video_id=7100569';
        var js = document.createElement('script');
        js.setAttribute('type', 'text/javascript');
        js.setAttribute('src', url);
        document.getElementsByTagName('head').item(0).appendChild(js);

ここで何が間違っているのか知りたかっただけです。2 番目のスニペットでは、null 応答ではなく、有効な JSON エラーが返されることに注意してください。

4

3 に答える 3

1

ここで説明する方法を使用してみてください。

于 2011-01-17T21:07:10.427 に答える
1

データは JSON-P ではなく JSON です。JSON-P ではないため、JavaScript として使用することはできません。

于 2011-01-17T21:03:25.403 に答える
1

それを数回見て(そしてコメントを投稿してから削除して)、これが私が思いついたものです:

「ファイル」を取得しているという事実は、ブラウザが結果をどのように処理しているかの機能にすぎません。IEがファイルに保存しようとしている間、Chromeは結果を問題なく表示しました。

ページの元のドメインとは異なるドメインに対して AJAX リクエストを実行できないため、問題が発生しています。これは、デビッド・ドーワードが目指していたものです。彼らが提供する例はjsonpです(これはjsonとは異なります)。基本的に、ajax 呼び出しの dataType を 'jsonp' に変更できるはずです。うまくいけば、それが機能し始めるでしょう。

HTH

于 2011-01-17T21:12:49.100 に答える