Integrazione con il pulsante"Nuovo " dell'interfaccia utente di Drive

Quando un utente fa clic su "Nuovo" della UI di Drive pulsante e seleziona un'app nella UI di Drive, Drive reindirizza l'utente al nuovo URL dell'app definita in Configurare una UI di Drive integrazione.

La tua app riceve quindi un insieme predefinito di variabili del modello in un state. Il valore predefinito per state informazioni 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 eseguita. Il valore è create quando un utente fa clic su "Nuovo" dell'interfaccia utente di Drive pulsante.
  • 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 utente.

L'app deve rispondere a questa richiesta seguendo questa procedura:

  1. Verifica che il campo action abbia il valore create.
  2. Utilizza il valore userId per creare una nuova sessione per l'utente. Per maggiori informazioni informazioni sugli utenti che hanno eseguito l'accesso, vedi Utenti e nuovi eventi.
  3. Utilizza il metodo files.create per per creare una risorsa del file. Se nella richiesta era impostato il valore folderId, imposta il valore parents al valore folderId.
  4. Se nella richiesta era impostato il valore folderResourceKey, imposta il valore Intestazione della richiesta X-Goog-Drive-Resource-Keys. Per ulteriori informazioni e chiavi delle risorse, consulta Accedere a file condivisi tramite link utilizzando le risorse. chiave.

Il parametro state è codificato nell'URL, quindi la tua app deve gestire il carattere di escape e analizzarlo come JSON.

Utenti e nuovi eventi

Le app Drive devono gestire tutte le attività di creazione eventi come potenziali accessi. Alcuni utenti potrebbero avere più account, quindi l'ID utente indicato in state potrebbe non corrispondere alla sessione corrente. Se l'ID utente in state non corrisponde alla sessione corrente, termina la sessione corrente per e accedi con l'account dell'utente richiesto.