0

FQLを使用してFacebookグラフAPIからデータをフェッチしています.jqueryを介してFacebookにgetリクエストを送信すると、コールバック関数で応答データを取得しますが、それを処理しようとすると、応答は次のように扱われることがわかりました文字列(辞書と見なして繰り返すことはできません)ですが、firebugログには次のjsonデータが表示されます。

console.log(response);

結果:

{
  "data": {
    "fql_search_result": [{
      "aid": "xxxxx",
    }, {
      "aid": "xxxxx",
    }, ]
  }
}

これを行ったときに、応答に属性データがないというエラーが発生しました

console.log(response.data)

データが辞書ではなく文字列として扱われるのはなぜですか?

4

2 に答える 2

1

jQuery経由で行ったリクエストで、dataTypeを「json」として指定しましたか?

dataType:'json',

または、デフォルトで dataType が「json」である AJAX GET リクエスト用の jQuery 短縮形関数を使用してみることができます。

jQuery.getJSON("https://graph.facebook.com/fql?q=SELECT+name+FROM+user+WHERE+uid+%3D+me+%28%29&access_token=<access_token>", function(data){
    console.log(data);
    console.log(data.data[0].name);
});
于 2012-09-02T13:29:06.493 に答える
0

JSON.parseを使用してjsonオブジェクトで解析してから、値にアクセスしてみてください

var YourJsonObject = JSON.parse("Your String");
于 2012-08-31T05:51:59.803 に答える