Похоже, что в настоящее время (и я квалифицирую это, поскольку Facebook, кажется, меняет свой ответ API по прихоти), вы можете получить auth_type: reauthenticate для правильной работы, если вы также указываете разрешения (параметр scope в OAuth 2.0) ). Проверьте этот пример:
http://www.fbrell.com/saved/a78ba61535bbec6bc7a3136a7ae7dea1
В этом примере нажмите «Выполнить код» и попробуйте кнопки «FB.login ()» и «FB.login () с разрешениями». Оба кодируются так, чтобы использовать auth_type: reauthenticate, но только последний фактически выдает приглашение FB после входа в систему.
Вот соответствующие примеры:
// DOES NOT PROMPT
document.getElementById('fb-login').onclick = function() {
FB.login(
function(response) {
Log.info('FB.login callback', response);
},
{ auth_type: 'reauthenticate' }
);
};
// PROMPTS AS EXPECTED
document.getElementById('fb-permissions').onclick = function() {
FB.login(
function(response) {
Log.info('FB.login with permissions callback', response);
},
{ scope: 'offline_access', auth_type: 'reauthenticate' }
);
};
Итак, ответ: Да, auth_type: reauthenticate, ДЕЛАЕТ ли РАБОТА, но ТОЛЬКО если вы также указали допустимый параметр области. (И да, я пробовал это с пустой областью действия, и это действовало так же, как и использование области вообще.)