0

他の人の助けを借りて、jsonがfoursquareから返されるのを見ることができるようになりましたが、それを呼び出そうとするとエラーが発生します。

基本的に、Firebug でネット オブジェクトを見ると、ステータス 200 が表示されます。

JSON タブをクリックすると自分の access_token が表示されますが、そこから抽出して API 呼び出しに使用するにはどうすればよいですか?

これが試した最新のコードです。

var jsonUrl = url +"&callback=?";
var access_token;

$("#getJSON").click(function() {
    $.getJSON(jsonUrl, { dataType: "JSONP" }, function(json){ 
        ...
        access_token = json.access_token;
        ...
    });
});

も試した

$.ajax({
  dataType: 'jsonp',
  jsonp: 'callback',
  url: url,
  success: function (json) {
    console.log(json.access_token);
  },
});

しかし、試してみると、alert(access_token); または、foursquare api 呼び出しを実行すると、次のエラーが表示されます

リソースはスクリプトとして解釈されますが、MIME タイプ application/json で転送されます。Uncaught SyntaxError: Unexpected token: checkinsGET https://api.foursquare.com/v2/users/self/checkins?oauth_token=undefined&format=json 401 (未承認)

準備ができて、私がそれを呼び出すのを待っているような気がしますが、一体どうすれば Dom から使用できる var に出力できますか? 何時間も戦っていて、何らかの理由でこれが私を逃れている私の研究技術をすべて試しています. これまでのところ、みんなの助けに感謝します。私はこれを乗り越えることを本当に望んでいます!

4

1 に答える 1

0

「&callback=?」を削除してみてください。URLから。dataTypeをjsonpに設定すると、jQueryがそれを追加すると思います。

編集: dataType パラメータを説明するjquery ajaxドキュメントから:

"jsonp": JSONP を使用して JSON ブロックに読み込みます。「?callback=?」を追加します。URL の末尾に追加して、コールバックを指定します。

于 2011-06-25T03:44:03.530 に答える