可能重复:
在Facebook上获取朋友之友列表
我需要得到某人的朋友(1级),朋友的朋友(2级)以及他们朋友的朋友(3级)的数量.这可能使用FQL或Graph API,如果是这样,怎么做?
到目前为止,我知道我可以使用此FQL查询获得第一级计数:
SELECT friend_count FROM user WHERE uid = me()
Run Code Online (Sandbox Code Playgroud)
但我不知道如何进一步,或者即使有可能这样做.
我在我的应用程序中加载Facebook个人资料图像时遇到问题.我从图表API获取了我的朋友列表,然后显示相关的朋友信息及其公开个人资料图片
我的HTML如下.
<div id = "profile_picture" style="float:left; width:100px;height: 100px" >
<img src="https://graph.facebook.com/{{providerUserId}}/picture?width=100&height=100"/>
</div>
<div id="user_basic_info" style="float:left;margin-left:14px;">
<div id="name" style="font-size:16px;font-weight:bold;margin-bottom:6px;">{{name}}</div>
<div id="email" style="margin-bottom:6px;width:400px;">{{email}}</div>
<div id="address"></div>
</div>
Run Code Online (Sandbox Code Playgroud)
{{}}是通过模型填充的Mustache模板.出于某种原因,图像不会在Chrome中加载; 但在Chrome Canary,Firefox,Safari中运行良好.
如果我也传入硬编码的userId也没有区别.
任何指导?
在Android项目中试图用一个按钮在Facebook上发布在用户的墙上.单击该按钮时,需要检查用户是否已使用其他Facebook应用程序登录,如果是这样,我需要打开Post On Wall Dialog,并预先填充数据进行共享.请指导我这个来实现.
我尝试按照本教程http://www.integratingstuff.com/2010/10/14/integrating-facebook-into-an-android-application/ 但在网页浏览中要求用户凭据后,页面导航到主要活动,而不是打开墙上对话框上的帖子.提前致谢.
您是否有人可以解释如何使用Facebook Graph API?它对我来说绝对没有意义.我知道我必须有一个api密钥和一个秘密的应用程序密钥,我有那些.我只需要知道使用Python从graph.facebook.com获取数据的基础知识.任何地方都没有任何消息来源,它会杀死我.简而言之,我如何达到可以打开一个传递了某个参数的URL的点,它实际上将数据返回给我?
非常感谢贾斯汀
我在https://developers.facebook.com/tools/explorer页面上获取了访问令牌,我的应用程序可以在Facebook页面的墙上发布.
然而,access_token一小时后过期.
我如何获得不到期access_token?
编辑:失败的选民:我已经发布了自己的答案,如果你读了它,你就会知道我的解决方案永远不会在FB文档中找到,也不会在SO中找到.
我有两个单独的js文件,domready.js和fb-jssdk.js.
jssdk处理加载sdk和登录.它在用户登录时从response.state返回正确的状态,具体取决于方案.
我感到困惑的是我如何使用FB响应中获得的数据和FB.api来获取用户登录时的名称和电子邮件,并使用jQuery在我的网站上使用它.
编辑: 我想知道如何在fb代码所在的单独的js文件中使用响应的内容,并将其与jQuery事件处理程序一起使用.
因此,如果我有一个名为testAPI()的函数将response.name输出到控制台,那么如何在另一个文件中获取response.name ="Kryptonite Dove"的数据呢?
testAPI()
function testAPI() {
console.log('Welcome! Fetching your information.... ');
FB.api('/me', function(response) {
console.log('Good to see you, ' + response.name + '.');
var state = response.name;
return response.name;
});
}
Run Code Online (Sandbox Code Playgroud)
一些功能
$("#id").click(function() {
if (response.name == "Kryptonite Dove") {
// Do something
}
});
Run Code Online (Sandbox Code Playgroud) javascript jquery facebook facebook-graph-api facebook-javascript-sdk
在Foursquare API中,有一个端点"探索场地",你可以通过食物进行lat和lng过滤,然后返回一个场地列表.Facebook上有类似的东西吗?我找不到......
最近阅读了fb开发人员路线图和"从'评论'图表API连接中删除'计数'部分".这意味着如果我调用图api,如https://graph.facebook.com/page_id/feed那么在数据中" count"字段将被弃用位于"评论"字段下?或者在其他一些电话中?请尽快回答我没有得到任何帮助.
尝试在Graph API Explorer中运行它:
"query1":"SELECT uid, message FROM status where uid in (SELECT uid2 from friend where uid1 = me())"
"query2":"SELECT name from user where uid in (select uid from #query1)"
Run Code Online (Sandbox Code Playgroud)
但我得到的只是:
{ "data": [ ] }
Run Code Online (Sandbox Code Playgroud)
我完全是新手.我究竟做错了什么?
因此,我使用下面的代码首先获取用户朋友,然后使用用户朋友ID生成他们拥有的共同朋友的数量.清楚地遍历所有朋友并每次比较它是一个漫长的过程,但它的工作原理.但是,页面需要一段时间才能加载.如何减少所需的时间或优化以下代码?
function getFriends()
{
FB.api('/me/friends', function(response) {
friendCount = response.data.length;
$("h2").append(friendCount+ ' friends');
if(response.data) {
$.each(response.data,function(index,friend) {
FB.api('/me/mutualfriends/'+friend.id, function(mutualfriends) {
$("#results").append('<ul><li>' + friend.name + ' has id:' + friend.id + ' has mutual friends: ' + mutualfriends.data.length + '</li></ul>');
$("#results").append('<img src="http://graph.facebook.com/' + friend.id + '/picture" />');
});
});
} else {
console.log("Error!");
}
});
}
Run Code Online (Sandbox Code Playgroud) facebook ×5
javascript ×2
android ×1
api ×1
facebook-fql ×1
foursquare ×1
jquery ×1
php ×1
python ×1