Quando un utente fa clic sul pulsante "Nuovo" della UI di Drive e seleziona un'app nell'UI di Drive, Drive reindirizza l'utente all'URL Nuovo dell'app definito in Configurare un'integrazione dell'interfaccia utente di Drive.
L'app riceve quindi un insieme predefinito di variabili del modello all'interno di un parametro
state
. Le informazioni state
predefinite per un nuovo URL sono:
{
"action":"create",
"folderId":"FOLDER_ID",
"folderResourceKey":"FOLDER_RESOURCE_KEY",
"userId":"USER_ID"
}
Questo output include i seguenti valori:
create
: l'azione in esecuzione. Il valore ècreate
quando un utente fa clic sul pulsante "Nuovo" della UI di Drive.- FOLDER_ID: l'ID della cartella principale.
- FOLDER_RESOURCE_KEY: la chiave della risorsa della cartella principale.
- USER_ID: l'ID profilo che identifica in modo univoco l'utente.
L'app deve eseguire questa richiesta seguendo questi passaggi:
- Verifica che il campo
action
abbia un valorecreate
. - Utilizza il valore
userId
per creare una nuova sessione per l'utente. Per ulteriori informazioni sugli utenti che hanno eseguito l'accesso, consulta Utenti e nuovi eventi. - Utilizza il metodo
files.create
per creare una risorsa file. Se nella richiesta è stato impostatofolderId
, imposta il campoparents
sul valorefolderId
. - Se
folderResourceKey
è stato impostato nella richiesta, imposta l'intestazione della richiestaX-Goog-Drive-Resource-Keys
. Per ulteriori informazioni sulle chiavi di risorsa, vedi Accedere ai file condivisi tramite link utilizzando le chiavi di risorsa.
Il parametro state
è codificato tramite URL, pertanto l'app deve gestire i caratteri di sfuggita e analizzarlo come JSON.
Utenti e nuovi eventi
Le app di Drive devono trattare tutti gli eventi "create" come potenziali accessi. Alcuni utenti potrebbero avere più account, pertanto l'ID utente nel parametro state
potrebbe non corrispondere alla sessione corrente. Se l'ID utente nel parametro state
non corrisponde alla sessione corrente, termina la sessione corrente per la tua
app e accedi come utente richiesto.