我想发出一个HTTP请求,以便在我的Facebook App中接收facebook.com登录用户的主页内容。该应用程序在iframe中加载。我正在使用James Padolsey制作的jQuery的跨域Ajax mod:http://james.padolsey.com/javascript/cross-domain-requests-with-jquery/。此mod适用于google.com等页面,如示例中所示。
不幸的是,如果我尝试这样的话:
$('#container').load('http://www.facebook.com/');
我没有结果也没有错误。此外,如果我尝试:
$.ajax({
type: 'POST',
url: 'http://www.facebook.com',
success: function(html){
process(html);
},
error: function(){
debug("error");
}
});
我在Firebug控制台中收到错误消息:data.results[0] is undefined
。
这个错误在James Padolsey的Ajax mod中,所以它与我在脚本中编写的任何代码没有任何关系。
有什么想法吗?
答案 0 :(得分:0)
JSON不能跨域工作。你需要使用JSONP或者更好的在getJSON调用中使用“callback =?”参数。
例如
$.getJSON("https://graph.facebook.com/me/friends?callback=?&access_token="+fbtoken, function(rtnmsg) {
}
其中fbtoken是您的访问令牌,rtnmsg是返回对象。这个对我有用。
干杯