У меня есть небольшое приложение, работающее на WP8.1 RT, которое использует Live SDK для подключения к Onedrive. В основном код выглядит следующим образом:Истек срок действия - что делать дальше?
string[] scopes = new string[] { "wl.signin", "wl.skydrive", "wl.offline_access" };
authClientOnedrive = new LiveAuthClient();
LiveLoginResult loginResult = await authClientOnedrive.InitializeAsync(scopes);
if (loginResult.Status != LiveConnectSessionStatus.Connected)
await authClientOnedrive.LoginAsync(scopes);
clientOnedrive = new LiveConnectClient(authClientOnedrive.Session);
Это прекрасно работает, как я wl.offline_access я токенов обновления. Поскольку я прочитал токены, должен быть действителен в течение года.
Но что делать, когда я получу исключение The access token that was provided has expired.
?
Один из моих пользователей теперь есть такая ситуация, и я должен сказать, что мне не хватает информации, что делать в таком случае, при использовании Live API SDK - как я попытался authClient.CanLogout всегда ложные и я не может Выход() для входа снова. Кто-нибудь знает что-то об этой ситуации? Нужно ли использовать REST api для этого?
LiveConnectSession, что можно найти либо в LiveLoginResult или LoginCompletedEventArgs заседании содержит RefreshToken. Но как его использовать Я не знаю, поскольку LiveAuthClient больше не принимает токен обновления. – Barnstokkr
@Barnstokkr * LiveConnctSession * в 'Microsoft.Live.dll, v5.6.0.0' для WP8.1 RT содержит только два свойства: * AccessToken * и * AuthenticationToken *. – Romasz