Facebook将数据作为字符串,json数据返回

时间:2012-08-31 05:50:12

标签: jquery facebook facebook-fql

我正在使用FQL从Facebook图形API中获取数据。当我通过jquery向Facebook发出get请求时,我在回调函数中获取响应数据但是,当我尝试处理它时,我发现响应被视为一个字符串(我无法迭代它,将其视为字典)但firebug日志显示以下json数据。

console.log(response);

结果:

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

我收到错误消息说响应没有属性数据,当我这样做时

console.log(response.data)

为什么数据被视为字符串而不是字典?

2 个答案:

答案 0 :(得分:1)

您是否通过jQuery在请求中将dataType作为'json'?

dataType:'json',

或者你可以尝试使用jQuery短手功能来实现AJAX GET请求,默认情况下将dataType设置为'json'。

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);
});

答案 1 :(得分:0)

尝试使用JSON.parse在json对象中解析它,然后访问您的值

var YourJsonObject = JSON.parse("Your String");