С другой стороны, я установил свой собственный файл cookie, который может читать серверная сторона:
У меня есть один флажок, который спрашивает пользователя, хочет ли он поделиться на фб, вот код:
function setFbCookies(response) {
Cookie.set('fb_access_token', response.authResponse.accessToken, {path: '/'})
Cookie.set('fb_user_id', response.authResponse.userID, {path: '/'})
}
when('#share_on_fb', function(checkbox) {
checkbox.observe('change', function(ev) {
if(checkbox.getValue()) {
FB.getLoginStatus(function(response) {
if (response.authResponse) {
setFbCookies(response)
} else {
FB.login(function(response) {
if (response.authResponse) {
setFbCookies(response)
} else {
checkbox.checked = false
}
}, {scope: 'publish_stream'});
}
})
}
})
})
И вот причина, по которой cookie fbs_xxxxx не устанавливается:
https://developers.facebook.com/blog/post/525/
Похоже, что если вы используете oath = false, тогда оно будет установлено, но это действительно только до 1 октября. До сих пор нет документации о том, как получить зашифрованный токен доступа из нового файла cookie fbsr_xxxxxx.