Как проверить, предоставил ли пользователь определенный набор разрешений для моего PHP-приложения?

Основываясь на этом вопросе , есть ли способ проверить, предоставил ли пользователь определенный набор разрешений для приложения с помощью PHP SDK на основе PHP? Я просмотрел API, но ничего не нашел.

Solutions Collecting From Web of "Как проверить, предоставил ли пользователь определенный набор разрешений для моего PHP-приложения?"

$permissions = $facebook->api("/me/permissions"); 

затем используйте if, чтобы проверить, какое разрешение вам нужно

EX:

 if (array_key_exists('publish_stream', $permissions['data'][0])) { postToWall(); } else { //Does not have permission } 

Если вы используете FQL

 $perms = $facebook->api(array( "method" => "fql.query", "query" => "SELECT read_stream,offline_access,publish_stream FROM permissions WHERE uid=me()" )); echo "<ul>"; foreach ($perms[0] as $k => $v) { echo "<li>"; if ($v === "1") { echo "<strong>$k</strong> permission is granted."; } else { echo "<strong>$k</strong> permission is not granted."; } echo "</li>"; } 

http://www.masteringapi.com/tutorials/how-to-check-if-user-has-certian-permission-facebook-api/22/

Это также сработало для меня, в тех случаях, когда у меня не было токена доступа, но имел идентификатор пользователя:

 $isGranted = $facebook->api(array( "method" => "users.hasAppPermission", "ext_perm" => "publish_stream", "uid" => $facebook_id ));