Integrar com o botão "Novo" da interface do Drive

Quando um usuário clica em "Novo" na interface do Drive botão e seleciona um aplicativo na interface do Drive, o Drive redireciona o usuário para o novo URL desse app. definido em Configurar uma interface do Drive de ML.

Seu aplicativo então recebe um conjunto padrão de variáveis de modelo em um parâmetro state. O padrão state informações de um novo URL são:

{
  "action":"create",
  "folderId":"FOLDER_ID",
  "folderResourceKey":"FOLDER_RESOURCE_KEY",
  "userId":"USER_ID"
}

Esta saída inclui os seguintes valores:

  • create: a ação que está sendo realizada. O valor é create quando um usuário clica em "Novo" na interface do Google Drive botão.
  • FOLDER_ID: o ID da pasta pai.
  • FOLDER_RESOURCE_KEY: a chave de recurso da pasta pai.
  • USER_ID: o ID do perfil que identifica exclusivamente o usuário.

Para atender a essa solicitação, o app precisa seguir estas etapas:

  1. Verifique se o campo action tem um valor de create.
  2. Use o valor userId para criar uma nova sessão para o usuário. Para mais informações sobre usuários conectados, consulte Usuários e novos eventos.
  3. Use o método files.create para criar um recurso de arquivo. Se folderId tiver sido definido na solicitação, defina o parents como o valor folderId.
  4. Se folderResourceKey tiver sido definido na solicitação, defina o X-Goog-Drive-Resource-Keys. Para mais informações sobre de recurso, consulte Acessar arquivos compartilhados por link usando chaves.

O parâmetro state é codificado para uso em URL, portanto, seu app precisa processar o escape. e analisar como JSON.

Usuários e novos eventos

Os aplicativos do Drive devem tratar todas as mensagens eventos como potencial logins. Alguns usuários podem ter várias contas. Por isso, o ID do usuário na state pode não corresponder à sessão atual. Se o ID do usuário na state não corresponder à sessão atual, encerre-a para sua e faça login como o usuário solicitado.