发布到使用facebook nodejs sdk:OAuthException组
我正在尝试使用nodejs sdk发布到Facebook群组墙( https://github.com/node-facebook/facebook-node-sdk )
这是我正在使用的一段代码:
访问令牌(工作正常):
FB.api('oauth/access_token', { client_id: appId, client_secret: appSecret, grant_type: 'client_credentials' }, function (res) { if (!res || res.error) { var errorMessage = !res ? 'Unkown error' : res.error; log.error(site + " Failed to get fb access token " + errorMessage); } var accessToken = res.access_token; FB.setAccessToken(accessToken); });
尝试发布:
var message = 'Hi from facebook-node-js'; FB.api( facebookGroupId + '/feed', 'POST', { // access_token: appToken, message: message }, function (res) { if (!res || res.error) { console.error(!res ? 'error occurred' : res.error); return; } console.log('Post Id: ' + res.id); });
哪个失败:
{ message: '(#200) The user hasn\'t authorized the application to perform this action', type: 'OAuthException', code: 200, fbtrace_id: 'xxxxx' }
现在,这是一个服务器端应用程序,我不能popup一些请求权限。 有人能指出我在哪里可以分配所需的权限的应用程序?
你必须有访问令牌来完成这一点,很明显,没有用户希望任何应用程序来保存她的Facebook的凭据。 所以正确的做法是首先popup产生访问令牌,并利用它进行发布。
您需要用户授予user_managed_groups和publish_actions权限才能这样做。 请记住,这两个权限需要由Facebook审查。
- 在安装React-Native时,npm错误“标题内容包含无效字符”?
- NodeJS,护照和Facebook,为什么我不能注销
- 从Passport策略路由中传递用户信息
- Facebook使者“开始”button
- Passport-Facebook令牌不断返回401
- 套接字IO | 如果重新打开连接,如何将客户端重新连接到同一个房间?
- 在GraphQL中将数组作为parameter passing
- 没有'Access-Control-Allow-Origin'标题问题与hapijs
- Passport.js:passport-facebook-token策略,通过JS SDKlogin,然后validation护照?