Domanda:
Come si possono evitare gli errori 401 relativi all'assenza di licenze gratuite quando si utilizza l'API di DocuWare?
Risposta:
In generale, esistono due opzioni: l'uso dei cookie per mantenere viva la sessione o l'uso dei token per riutilizzare la vecchia sessione. La procedura da seguire è descritta di seguito.
In generale, esistono due opzioni: l'uso dei cookie per mantenere viva la sessione o l'uso dei token per riutilizzare la vecchia sessione. La procedura da seguire è descritta di seguito.
Autenticazione:
Prima che il cookie/token possa essere utilizzato, è necessaria una sessione iniziale. Pertanto, l'applicazione deve effettuare l'accesso a DocuWare. A tale scopo, inviare una richiesta post contenente i dati di autenticazione all'endpoint/Conto/Login. La risposta conterrà almeno i due cookie seguenti: .DWPLATFORMAUTH e DWPLATFORMBROWSERID.
LogOff:
Quando viene eseguito un log-off tramite l'endpoint /Conto/LogOff, l'utente viene disconnesso da DocuWare. Il cookie di sessione corrente non è più valido e non può essere utilizzato in seguito. Ciò significa che è necessario creare una nuova sessione. Se entro due minuti viene effettuato un altro tentativo di accesso e non è disponibile alcuna licenza gratuita, verrà restituito un codice di stato HTTP 401 con il messaggio "Nessuna delle licenze registrate è disponibile per il cliente [nome utente]".
Evitarela risposta 401:
Per evitare il codice di stato 401 descritto sopra, è possibile utilizzare una delle seguenti opzioni.
Mantenere viva la sessione utilizzando i cookie:
Dopo l'accesso, memorizzare il cookie .DWPLATFORMAUTH in un contenitore di cookie. A questo punto il cookie del contenitore può essere utilizzato in ogni successiva Request all'API di DocuWare. Finché non viene eseguito il logout, l'applicazione può utilizzare la vecchia sessione senza dover eseguire nuovamente l'autenticazione e utilizzerà solo una licenza client. Utilizzare questo metodo se l'applicazione invia richieste all'API di DocuWare in un intervallo di tempo irregolare. La durata del cookie è impostata su 20 anni e dovrebbe funzionare finché non viene eseguito il log-off.
Riconnettersi entro due minuti utilizzando un token:
A volte è necessario riconnettersi all'API DocuWare entro due minuti dalla chiamata all'endpoint /Conto/LogOff. Per evitare l'errore 401, è possibile utilizzare un token, invece di mantenere la sessione in vita utilizzando il cookie. Il token può essere creato prima della disconnessione, chiamando l'endpoint /Organizations/LoginToken con il metodo post. Questa chiamata richiede un corpo in cui sono specificati il prodotto di destinazione, l'utilizzo (Multi, Single) e la durata. Si veda il seguente esempio di corpo JSON per creare un token:
LogOff:
Quando viene eseguito un log-off tramite l'endpoint /Conto/LogOff, l'utente viene disconnesso da DocuWare. Il cookie di sessione corrente non è più valido e non può essere utilizzato in seguito. Ciò significa che è necessario creare una nuova sessione. Se entro due minuti viene effettuato un altro tentativo di accesso e non è disponibile alcuna licenza gratuita, verrà restituito un codice di stato HTTP 401 con il messaggio "Nessuna delle licenze registrate è disponibile per il cliente [nome utente]".
Evitarela risposta 401:
Per evitare il codice di stato 401 descritto sopra, è possibile utilizzare una delle seguenti opzioni.
Mantenere viva la sessione utilizzando i cookie:
Dopo l'accesso, memorizzare il cookie .DWPLATFORMAUTH in un contenitore di cookie. A questo punto il cookie del contenitore può essere utilizzato in ogni successiva Request all'API di DocuWare. Finché non viene eseguito il logout, l'applicazione può utilizzare la vecchia sessione senza dover eseguire nuovamente l'autenticazione e utilizzerà solo una licenza client. Utilizzare questo metodo se l'applicazione invia richieste all'API di DocuWare in un intervallo di tempo irregolare. La durata del cookie è impostata su 20 anni e dovrebbe funzionare finché non viene eseguito il log-off.
Riconnettersi entro due minuti utilizzando un token:
A volte è necessario riconnettersi all'API DocuWare entro due minuti dalla chiamata all'endpoint /Conto/LogOff. Per evitare l'errore 401, è possibile utilizzare un token, invece di mantenere la sessione in vita utilizzando il cookie. Il token può essere creato prima della disconnessione, chiamando l'endpoint /Organizations/LoginToken con il metodo post. Questa chiamata richiede un corpo in cui sono specificati il prodotto di destinazione, l'utilizzo (Multi, Single) e la durata. Si veda il seguente esempio di corpo JSON per creare un token:
{
"TargetProducts":["PlatformService"],
"Usage": "Multi",
"Lifetime":"1.00:00:00"
}
"TargetProducts":["PlatformService"],
"Usage": "Multi",
"Lifetime":"1.00:00:00"
}
La risposta conterrà il token fornito dalla piattaforma. Successivamente, l'autenticazione può essere eseguita inviando il token via post a /Conto/TokenLogOn. Questo metodo di autenticazione consente di riutilizzare la licenza utente in uso prima dell'operazione di log-off. Il token ha una durata che può essere impostata al momento della richiesta del token (parametro Lifetime). La maggior parte delle applicazioni DocuWare (ad esempio, Desktop Apps) utilizza un token con una durata di 365 giorni. Per ripetere questo processo, è importante creare un nuovo token prima di disconnettersi e utilizzare sempre il token più recente per eseguire l'operazione di login.
Il KBA è applicabile sia alle organizzazioni cloud che a quelle on-premise.
Si prega di notare: Questo articolo è una traduzione dall'inglese. Le informazioni contenute in questo articolo si basano sulla versione originale in inglese del/i prodotto/i. Potrebbero esserci piccoli errori, ad esempio nella grammatica utilizzata nella versione tradotta dei nostri articoli. Sebbene non possiamo garantire la completa accuratezza della traduzione, nella maggior parte dei casi la troverete sufficientemente informativa. In caso di dubbi, si prega di fare riferimento alla versione inglese di questo articolo.
Si prega di notare: Questo articolo è una traduzione dall'inglese. Le informazioni contenute in questo articolo si basano sulla versione originale in inglese del/i prodotto/i. Potrebbero esserci piccoli errori, ad esempio nella grammatica utilizzata nella versione tradotta dei nostri articoli. Sebbene non possiamo garantire la completa accuratezza della traduzione, nella maggior parte dei casi la troverete sufficientemente informativa. In caso di dubbi, si prega di fare riferimento alla versione inglese di questo articolo.
