我正在尝试在没有Facebook评论插件的情况下在网站内构建评论方法。
这是一个网站的照片库部分,所有照片实际上都是在商业页面上托管的,我这样做是为了利用FBs上传,调整大小/旋转等,而不是自己构建它。
作为一个快乐的副产品,我想我可以将网站上的评论与FB上的评论联系起来,并有一个同步评论系统,任何网站(我的网站或FB)上发布的评论都会在任一网站上同等显示。< / p>
所以,我已经研究了如何发表评论,但它总是作为商业页面发布,而不是登录用户。
此代码发布评论,变量obj
是Facebook上照片的ID。 msg
显然是评论文字。我有设置方法来获取所需的正确权限,如果帖子的响应声明需要,则调用这些权限。
FB.api('/' + obj + '/comments',
'post',
{ "message": msg,
"access_token": accessToken,
"from": uid
}, // do the post
function (response) { // check the response
if (!response || response.error) { // if there's an error
// DO STUFF WITH ERRORS/REQUEST PERMS ETC
} else {
alert("Msg posted id: " + response.id);
};
});
以上所有内容都有效,但是当评论显示时,它始终显示from: my Page ID
,而不是我需要的内容from: my user id
accessToken
和UID
,如下所示:
FB.getLoginStatus(function (response) {
if (response.status === 'connected') {
uid = response.authResponse.userID;
accessToken = response.authResponse.accessToken;
}
});
第一个函数中的段from
会发布用户ID,而不是页面ID,但无论该段是否存在,它总是将注释作为页面发布。
令我感到沮丧的是,到目前为止,这实现起来非常简单!