Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/449.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用扩展令牌作为页面所有者在Facebook页面帖子上发表评论_Javascript_Node.js_Facebook_Facebook Graph Api - Fatal编程技术网

Javascript 使用扩展令牌作为页面所有者在Facebook页面帖子上发表评论

Javascript 使用扩展令牌作为页面所有者在Facebook页面帖子上发表评论,javascript,node.js,facebook,facebook-graph-api,Javascript,Node.js,Facebook,Facebook Graph Api,我正在开发一个node.js应用程序,它管理Facebook页面和其他功能 为了评论用户提交的帖子,我在node.js中使用了以下代码: FB.api(object + '/comments','post', { message: COMMENT_I_WANT_TO_SUBMIT, access_token: MY_PAGE_ACCESS_TOKEN }, function(res){ // deal with res } ); 当使用我的短期Facebook页面访问令牌

我正在开发一个node.js应用程序,它管理Facebook页面和其他功能

为了评论用户提交的帖子,我在node.js中使用了以下代码:

FB.api(object + '/comments','post',
  { message: COMMENT_I_WANT_TO_SUBMIT, access_token: MY_PAGE_ACCESS_TOKEN },
  function(res){ 
    // deal with res
  }
);
当使用我的短期Facebook页面访问令牌(我从Graph API Explorer获得)时,提交的评论显示为页面本身提交的评论(我想要的),但当我使用我的永久令牌时,它显示为我自己提交的评论(页面所有者)

要获得此永久令牌,我遵循以下说明:

令牌与我的名字关联,因为我必须授予权限来管理我拥有的页面以生成令牌。 我相信此令牌具有适当的权限,因为令牌调试器在作用域中显示以下权限:“管理\u页面、发布\u页面、发布\u操作、公共\u配置文件”


有什么方法可以使用这个永不过期的令牌来评论带有页面名称而不是我自己的帖子吗?

页面访问令牌不仅应该有“用户ID”,而且还应该有“配置文件ID”,这与扩展页面访问令牌不同

页面访问令牌不是“可扩展的”,要获得永久页面访问令牌,我必须使用永久用户访问令牌请求一个,如前所述

使用从Graph API Explorer(选择应用程序->获取令牌->选择权限
manage\u pages
publish\u pages
publish\u actions
,以及其他您可能需要的->获取填充“访问令牌”文本框的令牌)获得的短期访问令牌,我进行了以下调用以扩展令牌。
https://graph.facebook.com/oauth/access_token?grant_type=fb_exchange_token&client_id={app id}&client_secret={app secret}&fb_exchange_token={short-live token}

使用返回的令牌,您只需调用
/me/accounts
并复制页面的
访问令牌

此令牌是一个永久性页面访问令牌,用于确认您可以使用,并验证它是否具有您的“用户ID”和页面的“配置文件ID”

使用调试您的访问令牌–如果它没有列出“用户ID”之外的“配置文件ID”,则它不是页面访问令牌。实际上,我使用的令牌没有关联的“配置文件ID”。它有“应用程序ID”和我的“用户ID”。我的令牌怎么会有这个“配置文件ID”?我在主要问题中提供的链接不只是扩展了我目前的短期代币吗?提前感谢这只意味着你没有得到一个页面访问令牌在第一位。如何获得扩展页面访问令牌在文档中有明确描述:我已经解决了问题,并将在单独的回答中解释,但这不是问题所在,因为正如我在主要问题中所述,我已经成功地将我的短期页面访问令牌和注释用作页面,而不是用作我自己。问题在于扩展令牌的过程,而这正是链接派上用场的地方。我已经读过文档部分,但不知为什么我没有正确地解释。谢谢您的时间。“但这不是问题所在”——很确定问题在于您的扩展令牌不是页面访问令牌。如果您在扩展过程中以错误的顺序进行操作,那么您将无法获得扩展页面访问令牌,而只能得到扩展用户令牌。