Extrator de Arquivos - Adicionar origem Google Drive

Problema

Neste tópico, temos um exemplo de como fazer o download de um arquivo do Google Drive através do Extrator de Arquivos.

A implementação consiste em fazer uma solicitação do tipo GET para a URL do Google Drive.

Para baixar o arquivo, informamos o parâmetro de URL alt=media. Porém, quando este parâmetro é informado, o Google Drive não retorna o nome original do arquivo em nenhum local.

Para obter o nome do arquivo, é necessário fazer a solicitação GET sem informar o parâmetro alt=media. O resultado dessa requisição seria assim:

{
    "kind": "drive#file",
    "id": "1RnOaiz4pb6......",
    "name": "Workshop Online 2 MIRO.png",
    "mimeType": "image/png"
}

Portanto, seriam necessárias duas requisições para baixar o arquivo usando o nome original:

  1. Para obter os meta dados do arquivo
  2. Para fazer o download

No entanto, o Extrator de Arquivos não suporta o uso de duas requisições para baixar um arquivo.


Origem: Google Drive - Extrair arquivo com nome ao invés de ID

Solução Sugerida

A solução para este problema será adicionar um novo tipo de origem no Extrator de Arquivo, tratando especificamente o download de arquivos do Google Drive.

O tipo de origem “Google Drive” seria usado ao invés do tipo “WebAPI”, o nome do arquivo poderia ser obtido internamente pela plataforma, antes de fazer o download.

Olá, estou verificando dentro dos tipos do Extrator de Arquivo e não encontrei o tipo Google Drive, eu teria que adaptar do zero?

Olá @fernanda.pereira!

:tada: Seja bem vinda a comunidade Latromi! :tada:

Esperamos que este espaço possa te oferecer uma caixa de ferramentas, ideias e boas práticas para apoiar o seu dia a dia de desenvolvimento com a plataforma.

Fique à vontade para explorar, compartilhar experiências e trocar conhecimento com a comunidade!


O recurso apresentado neste tópico ainda está em desenvolvimento e poderá ser disponibilizado em versões futuras da plataforma.

Mas fique tranquilo :blush:
Embora o objetivo desse recurso seja simplificar essa implementação, atualmente já existem alternativas viáveis para alcançar o mesmo resultado. Acreditamos que um ou mais dos tópicos abaixo possam te apoiar nesse processo:

Esses materiais abordam o tema ou demonstram formas práticas de realizar essa implementação atualmente na plataforma.