2016-10-18 5 views
0

Я работаю над формой xamarin, я использовал авторизацию для входа в систему. При входе я получаю токен доступа, который я отправляю с запросом в web api. Продолжительность токена составляет 1 час. Я создал функциональность обновления токена через 55 минут. Но я получаю проблему с токеном обновления, когда приложение является спящим режимом более 1 часа, токен обновления токена не генерируется, потому что токен обновления создается на токене, который генерируется во время входа в систему. Пожалуйста, помогите мне, как я могу исправить эту проблему. Вот код маркера обновления: -Обновить токен для доступа к конечным точкам обслуживания

var user = await AzureMobileService.DefaultManager.MobileService.RefreshUserAsync(); 
      Settings.AuthToken = user?.MobileServiceAuthenticationToken ?? string.Empty; 

ответ

1

Вы можете переопределить OnStart, OnSleep & OnResume методы внутри App.cs. Когда вы обновили токен, сохраните временную метку где-нибудь, затем переопределите метод OnResume &, проверьте, истекает ли токен. Если так, обновите его.

+0

Предположим, я использую эти методы переопределения. Я вошел в систему, и у меня есть токен доступа, который действителен в течение 1 часа. Я использовал приложение в течение 15 минут, а затем закрыл приложение и снова зарегистрировался через 1 час и полчаса. Теперь время токена истекло, мы не можем генерировать токен обновления с помощью этого токена, эта вещь, с которой я столкнулся. –

Смежные вопросы