如何在应用程序处于开发模式时 post 在墙上?
How to post on wall when app is in development mode?
我有一个处于开发模式的新 Web 应用程序,我正在尝试 post 使用类似这样的方式访问用户墙:
<fb:login-button scope="publish_pages" autologoutlink="true" onlogin="OnRequestPermission();">
</fb:login-button>
...
var params = {};
params['message'] = 'Message';
params['name'] = 'Name';
params['description'] = 'Description';
params['link'] = 'http://www.example.com';
params['picture'] = 'http://example.com/example.png';
params['caption'] = 'Caption';
FB.api('/me/feed', 'post', params, function(response) {
if (!response || response.error) {
console.log(response.error);
} else {
alert('Published to stream - you might want to delete it now!');
}
});
我正在使用该应用中定义的 FB 帐户作为管理员成功登录后对此进行测试,但收到 OAuthException 错误:
"(#200) 用户未授权应用程序执行该操作"
我是否需要通过审核发送应用程序以获得额外的访问权限,即使我们正在测试中?还有什么我在这里错过的吗?
谢谢
您使用了错误的权限,您需要 publish_actions
到 post 到用户墙。 publish_pages
用于 post 访问您拥有的主页。测试无需通过审核流程,所有权限无需审核即可用于在应用程序中具有角色的用户。
我有一个处于开发模式的新 Web 应用程序,我正在尝试 post 使用类似这样的方式访问用户墙:
<fb:login-button scope="publish_pages" autologoutlink="true" onlogin="OnRequestPermission();">
</fb:login-button>
...
var params = {};
params['message'] = 'Message';
params['name'] = 'Name';
params['description'] = 'Description';
params['link'] = 'http://www.example.com';
params['picture'] = 'http://example.com/example.png';
params['caption'] = 'Caption';
FB.api('/me/feed', 'post', params, function(response) {
if (!response || response.error) {
console.log(response.error);
} else {
alert('Published to stream - you might want to delete it now!');
}
});
我正在使用该应用中定义的 FB 帐户作为管理员成功登录后对此进行测试,但收到 OAuthException 错误:
"(#200) 用户未授权应用程序执行该操作"
我是否需要通过审核发送应用程序以获得额外的访问权限,即使我们正在测试中?还有什么我在这里错过的吗?
谢谢
您使用了错误的权限,您需要 publish_actions
到 post 到用户墙。 publish_pages
用于 post 访问您拥有的主页。测试无需通过审核流程,所有权限无需审核即可用于在应用程序中具有角色的用户。