Как я могу позволить пользователю отменить доступ к моему приложению, используя их службу API, SDK. http://developers.facebook.com/docs/sdks/
Глядя на документацию, я ничего не могу найти об отзыве доступа.
Как я могу позволить пользователю отменить доступ к моему приложению, используя их службу API, SDK. http://developers.facebook.com/docs/sdks/
Глядя на документацию, я ничего не могу найти об отзыве доступа.
в графическом API для объекта пользователя вы можете выдать запрос HTTP DELETE в/PROFILE_ID/разрешения для отмены авторизации для приложения.
из официальной документации (developers.facebook.com/docs/reference/api/user/):
Вы можете отменить авторизацию приложения или аннулировать конкретный расширенный разрешений от имени пользователя путем выдачи запроса HTTP DELETE для PROFILE_ID/разрешения с пользователем access_token для этого приложения.
Параметр Описание Тип Необходимые разрешения Разрешение желание отозвать. Если вы не укажете разрешение, это будет полностью отменить авторизацию приложения. string no Вы получаете следующий результат.
Описание Тип True, если удаление выполнено успешно и ошибка в противном случае. булево
Для FB JavaScript SDK:
FB.api('/me/permissions', 'delete', function(response) {
console.log(response); // true
});
Для тех, кто найдет это полезным, я теряю сон и разрушаю свой мозг в течение нескольких дней, пытаясь заставить его работать;
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');
}
});
Надеюсь, это поможет кому-то!