Подтвердить что ты не робот

Facebook API SDK отменяет доступ

Как я могу позволить пользователю отменить доступ к моему приложению, используя их службу API, SDK. http://developers.facebook.com/docs/sdks/

Глядя на документацию, я ничего не могу найти об отзыве доступа.

4b9b3361

Ответ 1

в графическом API для объекта пользователя вы можете выдать запрос HTTP DELETE в/PROFILE_ID/разрешения для отмены авторизации для приложения.

из официальной документации (developers.facebook.com/docs/reference/api/user/):

Вы можете отменить авторизацию приложения или аннулировать конкретный расширенный разрешений от имени пользователя путем выдачи запроса HTTP DELETE для PROFILE_ID/разрешения с пользователем access_token для этого приложения.

Параметр Описание Тип Необходимые разрешения Разрешение желание отозвать. Если вы не укажете разрешение, это будет полностью отменить авторизацию приложения. string no Вы получаете следующий результат.

Описание Тип True, если удаление выполнено успешно и ошибка в противном случае. булево

Ответ 2

Для FB JavaScript SDK:

FB.api('/me/permissions', 'delete', function(response) {
    console.log(response); // true
});

Ответ 3

Для тех, кто найдет это полезным, я теряю сон и разрушаю свой мозг в течение нескольких дней, пытаясь заставить его работать;

FB.api('/me/permissions', 'DELETE', function(response) {
    if (response == true) {
        window.top.location = 'logout-facebook.php';
    } else {
        alert('Error revoking app');
    }
});

Наконец-то я получил это, когда заметил, что возвращаемый ответ не был логическим, а JSON-объектом.

Возвращаемый объект JSON был либо:

{
    success: "true"
}

ИЛИ

{
    success: "false"
}

После этого правильный код был:

FB.api('/me/permissions', 'DELETE', function(response) {
    if (response.success == true) {
        window.top.location = 'logout-facebook.php';
    } else {
        alert('Error revoking app');
    }
});   

Надеюсь, это поможет кому-то!