Как мне управлять токеном доступа в Facebook? - PullRequest
0 голосов
/ 23 сентября 2011

У меня есть приложение, в которое пользователь может войти, используя Twitter и Facebook, чтобы войти, не было проблем с Twitter, так как токен доступа никогда не истекает, как, впрочем, и в Facebook.В моем приложении я могу подключить учетную запись fb, если пользователь входит в твиттер и наоборот.Facebook в основном используется, чтобы поделиться чем-то на стене пользователя.Проблема, с которой я сталкиваюсь сейчас, заключается в том, что когда пользователь пытается поделиться чем-то, используя свою учетную запись Facebook, и срок действия токена доступа истекает, появляется всплывающее окно входа в систему, и после того, как я захожу, он больше не делится этим.Так каков наилучший способ сохранить этот токен?У меня никогда не было опыта использования любого другого приложения, которое просит меня войти снова ... как они справляются с этим током

Ответы [ 2 ]

0 голосов
/ 23 сентября 2011

Видите, вы должны понимать, что Facebook и Twitter работают по-разному.

Вы можете по существу сохранить маркер доступа в NSUserDefaults как:

[[NSUserDefaults standardUserDefaults] setObject:_facebook.accessToken forKey:@"fb_access_token"];
[[NSUserDefaults standardUserDefaults] setObject:_facebook.expirationDate forKey:@"fb_exp_date"];

(Полагаю, вы уже это делаете)

токен действует до истечения срока действия, пользователь меняет пароль учетной записи или пользователь удаляет ваше приложение. в этом случае вы получите исключение. после получения исключения вам необходимо снова войти в систему и получить новый токен, а если вы захотите снова опубликовать сообщение, появится диалоговое окно. и поскольку FBDialog является WebView, вы не можете выполнить действие, не нажимая на кнопку публикации.

0 голосов
/ 23 сентября 2011

Я полагаю, что вы должны запросить разрешение «offline_access», это сделает ваш токен доступа последним, пока пользователь не решит удалить ваше приложение. В этом случае вы можете решить удалить из своей базы данных свои данные или нет с помощью URL-адреса деавторизации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...