2016-05-09 77 views
7

ho creato un Account (joss.model.Account), nella configurazioneAutenticazione con Swift con Joss

allowReauthenticate=true 

Quasi immidiateley dopo la creazione conto che io chiamo

Access mAccess = mAccount.authenticate(); // (joss.model.Access) 

Dopo che ho bisogno di utilizzare il token. Lo uso dopo 30 minuti e 1,5 ore e 24 ore ecc. chiamando il numero mAccess.getToken() Il tempo di espulsione di token è 1 ora. Posso supporre che verrà eseguita la ri-autenticazione e dopo 1,5h anche dopo 24 h il token sarà valido? O devo ri-autenticarsi manualmente?

I.e. mAccess.getToken() restituirà non valido (token scaduto) dopo 1,5 ore e 24 ore. Come autenticare di nuovo correttamente in questo caso?

risposta

1

Basta chiamare mAccount.authenticate() una volta mAccess.getToken() restituzioni non valide. Dimentica il tempo nell'app client, deve essere rientranti.

Gestire l'interfaccia utente intorno a quella (reinserire nome utente/password se necessario prima del metodo authenticate() se le credenziali esistenti risultano inutili).

+0

Sai come posso sapere il tempo di scadenza del token? – Yakov

+0

Se la propria API o documentazione non fornisce questo valore, è necessario utilizzare la versione di prova/errore. Quando ottieni il token, salva un timestamp + 3600 secondi con esso. Se lo si confronta con l'ora corrente, è possibile aspettarsi che il token sia scaduto dopo 1 ora. O semplicemente usa il token che hai e nel caso in cui fallisca, significa che è scaduto. – igraczech