如何检查用户是否已允许您的应用程序在其流上发布(以避免暂时弹出菜单)。目前,我只是简单地使用这段JavaScript代码:Facebook权限:如何检查用户是否已经允许publish_stream用于您的应用程序
<script>
<!--
Facebook.showPermissionDialog('publish_stream,read_stream');
//-->
</script>
如何检查用户是否已允许您的应用程序在其流上发布(以避免暂时弹出菜单)。目前,我只是简单地使用这段JavaScript代码:Facebook权限:如何检查用户是否已经允许publish_stream用于您的应用程序
<script>
<!--
Facebook.showPermissionDialog('publish_stream,read_stream');
//-->
</script>
使用Users.hasAppPermission检查用户是否具有这些权限。
通用API:http://wiki.developers.facebook.com/index.php/Users.hasAppPermission
Javascript库:http://developers.facebook.com/docs/?u=facebook.jslib.FB.ApiClient.users_hasAppPermission
abronte是正确的,使用hasAppPermission,你可以在这个tuorial看到:
http://www.barattalo.it/2010/01/17/posting-to-facebook-from-website-with-facebook-connect/
大厦关闭AdamB的回答是,如果你使用的是JavaScript Graph SDK,你可以使用Sti将调用REST API(函数users.hasAppPermission是REST API的一部分)。
请参阅FB.api了解说明。
使用Graph API执行此操作的正确方法是使用User.permissions。
参见:那么与JS SDK https://developers.facebook.com/tools/explorer/?method=GET&path=me%2Fpermissions
你可以这样做:
FB.api('/me/permissions', checkAppUserPermissions);
function checkAppUserPermissions(response) {
console.log("User permissions response", response);
}
使用FB SDK,你可以简单的使用 “/我” 端点检查特定许可的状态。 对于所有权限,将permBundle设置为空,全部的权限状态在响应中返回。
final Bundle permBundle = new Bundle();
permBundle.putCharSequence("permission", "publish_actions");
GraphRequest request = new GraphRequest(
AccessToken.getCurrentAccessToken(),
"/me/permissions", permBundle, HttpMethod.GET,
new GraphRequest.Callback() {
@Override
public void onCompleted(GraphResponse graphResponse) {
Log.d(TAG, "response: " + graphResponse.getJSONObject());
}
}
);
request.executeAsync();
这是使用即将被弃用的REST API,请参阅下面的答案如何使用Graph API来实现。 – dain 2011-11-30 18:48:59