Javascript 在FQL中为10个随机的Facebook好友中的每一个查找一张照片?
我正在尝试执行Facebook FQL多重查询(通过JS SDK FB.api调用),为10个随机的Facebook好友中的每一个加载一张照片,在这些好友被标记的地方(也称为“显示10个随机好友和他们的一张照片”)。以下是我的Javascript查询数组:Javascript 在FQL中为10个随机的Facebook好友中的每一个查找一张照片?,javascript,facebook,facebook-graph-api,facebook-fql,Javascript,Facebook,Facebook Graph Api,Facebook Fql,我正在尝试执行Facebook FQL多重查询(通过JS SDK FB.api调用),为10个随机的Facebook好友中的每一个加载一张照片,在这些好友被标记的地方(也称为“显示10个随机好友和他们的一张照片”)。以下是我的Javascript查询数组: var queries = { q1:"SELECT uid, name FROM user WHERE uid IN (Select uid2 from friend where uid1 = " + user
var queries = {
q1:"SELECT uid, name FROM user WHERE uid IN (Select uid2 from friend where uid1 = " + user_id
+ " order by rand() limit 10) ",
q2: "SELECT pid, subject from photo_tag where subject in (SELECT uid from #q1) limit 10",
q3:"SELECT src from photo where pid in (SELECT pid from #q2)"};
我想做的是:
谢谢 好吧,我前一段时间解决了这个问题,为了完整起见,我现在结束这个问题 我所要做的不是在一个多查询中完成所有操作。我必须先做一个查询来检索一些随机的朋友,然后再做一个多重查询,在这里我们为每个朋友加载一张随机的照片
FB.api(
{
method: 'fql.query',
query: "SELECT uid, name FROM user WHERE uid IN (Select uid2 from friend where uid1 = " + user_id
+ " order by rand() limit 8) "
}, function (response) {
var queries = {};
for (x in response) {
if (typeof photoArray[response[x].uid] == 'undefined') photoArray[response[x].uid] = [];
photoArray[response[x].uid]['name'] = response[x].name;
queries[response[x].uid] = "SELECT src_big, caption from photo where pid in (SELECT pid from photo_tag where subject =" + response[x].uid + " order by rand() limit 1) ";
}
FB.api(
{
method: 'fql.multiquery',
queries: queries
},
function(response) {
for (y in response) {
if (typeof response[y].fql_result_set[0] != 'undefined') {
photoArray[response[y].name]['image_src'] = response[y].fql_result_set[0].src_big;
// Do what you want with the pics
}
}