我想从Facebook获取一个朋友列表,然后将值更改为解析用户ID,如下所示:
我从Facebook获得了朋友列表,并尝试获取其中包含安装项目的任何项目。
然后我尝试用解析用户id替换install:true,方法是将FB id查询到我在解析.com中存储的FB(在应用安装时)。问题是解析不返回任何值没有错误/成功msg没有任何内容。
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定义函数中获取它,查询本身就可以工作。
答案 0 :(得分:0)
你忘记了“Masterkey”兄弟。只需在函数的最顶部添加:
Parse.Cloud.useMasterKey();