我有一个可以显示共同朋友的应用.在节点服务器上,我具有以下代码来为用户赢得共同的朋友:
var express = require('express'),
FB = require('fb'),
appFB = FB.extend({appId: '<appId>', appSecret:'<app-secret>'}),
router = express.Router();
router.get("/allMutualFriends", function(req, res) {
if(!req.query.accesstoken || !req.query.otherUserId){
res.set("type", "error");
return res.status(400).send({"accesstoken":req.query.accesstoken, "otherUserId": req.query.otherUserId});
}
console.log(req.query);
var accesstoken = req.query.accesstoken;
var otherUserId = req.query.otherUserId;
appFB.setAccesstoken(accesstoken);
appFB.api('/' + otherUserId, { fields: 'context.fields(all_mutual_friends.limit(500))'}, function (response) {
if(!response.context) {
res.set('Content-Type', 'text/plain');
return res.status(400).send(JSON.stringify(response));
}
if(!response.context.all_mutual_friends) return res.status(400).send("unable to find mutual friends");
console.log(response);
var friends = response.context.all_mutual_friends.data;
var responseData = [];
for(var i = 0; i < friends.length; ++ i){
responseData.push({name: friends[i].name, id: friends[i].id, picture: friends[i].picture.data.url});
}
return res.status(200).send(responseData);
});
});
module.exports = router;
我已经将我的应用程序提交给了Facebook,他们批准了它,并且这段代码正常运行了大约一周.
但是,在过去的这个星期五,它完全停止了工作.我不确定Facebook或我的代码是否正在发生问题.
现在,我得到的只是:
{
"context": {
"id": "<some-large-hash>"
},
"id": "<the-id-of-the-other-user>"
}
我唯一能想到的是,如果他们认为我的节点服务器是我的客户端,但事实并非如此.
有人有想法么? api版本2.9
如果这是重复的话,我表示歉意
解决方法:
我遇到了同样的问题,我浪费了两个小时,然后发现这是Facebook平台API(https://developers.facebook.com/bugs/241586859664764/)的确认错误.看来许多其他开发人员已受到此影响.
附言我不知道你为什么被拒绝.有很多上下文,这是一个好问题.