我正在尝试从 Facebook 获取朋友列表,然后更改值以解析用户 ID,如下所示:
我从 Facebook 获得了朋友列表,并尝试获取其中包含安装项目的任何项目。
然后,我尝试通过将 FB id 查询到我存储在 parse .com 中的 FB(在应用程序安装时),用 parse user id 替换 install: true 。问题是 parse 不返回任何值,没有错误/成功消息,什么都没有。
Parse.Cloud.define("fbtomo3", function(request, response)
{
var fbid =request.user.get('FaceBookId');
var fbtoken = request.user.get('authData').facebook.access_token;
var listFromFB ="";
Parse.Cloud.httpRequest(
{
url:"https://graph.facebook.com/"+fbid+"?fields=friends.fields(installed,name)&access_token="+fbtoken+'"',
success:function(httpResponse)
{
listFromFB = JSON.parse(JSON.stringify(httpResponse.data.friends.data));
console.log("GOT FBLIST");
for(var item in listFromFB)
{
if(listFromFB[item].installed!=null)
{
var query = new Parse.Query("User");
query.notEqualTo("FaceBookId",listFromFB[item].id );
query.find({
success: function(results)
{
console.log(results.id);
//this is where i change listFromFB[item].installed to user id but i dint get any results from query
//response.success(results);
},
error: function(error) {
//response.error("failed to look for users");
console.log(error.code);
}
});
}
}
response.success(listFromFB);
},
error:function(httpResponse)
{
console.log("didnt get it");
response.error(httpResponse);
}});
});
查询似乎不起作用。谁能帮我解释为什么?
我应该注意,如果在另一个 cloudcode 定义函数中获取它,查询本身就可以工作。