Eu queria saber se é possível acessar / exibir arquivos como imagens que são armazenadas no Google Drive em um site público.
Eu queria saber se é possível acessar / exibir arquivos como imagens que são armazenadas no Google Drive em um site público.
Respostas:
Uma solução alternativa é obter o fileId
com Google Drive SDK API
e depois usar o seguinte Url
:
https://drive.google.com/uc?export=view&id= {fileId}
Esse será um link permanente para seu arquivo no Google Drive (imagem ou qualquer outra coisa).
Nota: este link parece estar sujeito a cotas. Portanto, não é ideal para compartilhamento público / massivo.
ATUALIZAÇÃO: como foi anunciado , o Google reprovou esse recurso em agosto de 2016. Aqui está a atualização final do Google com alternativas.
Sim é possivel. Desde que você coloque seus arquivos em uma pasta pública, você pode obter qualquer arquivo em uma pasta por este URL:
https://googledrive.com/host/<folderID>/<filename>
Aqui está o link de visualização simples:
https://drive.google.com/uc?id=FILE_ID
por exemplo, https://drive.google.com/uc?id=0B9o1MNFt5ld1N3k1cm9tVnZxQjg
Você pode fazer o mesmo com outros tipos de arquivo, como MP3, PDF, etc.
https://drive.google.com/file/d/2B8NbrE732XHNLThjZWZzMMVCDeVFpLVVXUkFjT3h2Qloweslz/edit?usp=sharing
se transformou https://drive.google.com/uc?id=2B8NbrE732XHNLThjZWZzMMVCDeVFpLVVXUkFjT3h2Qloweslz
).
data.response.webContentLink
. Isso terá &export=download
no final, que só precisa ser aparado.
aqui está como em @ https://productforums.google.com/forum/#!topic/drive/yU_yF9SI_z0/discussion
1- carregar sua imagem
2- clique com o botão direito e escolha "obter link compartilhável"
3- copie o link que deve parecer
4-mude o open?
para uc?
e use-o como
<img src="https://drive.google.com/uc?id=xxxxx">
http:
ou https:
ao fazer referência a algo da Web para evitar problemas com o servidor.drive.google.com
?
ATUALIZAÇÃO: como foi anunciado , o Google reprovou esse recurso em agosto de 2016. Aqui está a atualização final do Google com alternativas.
Em abril de 2013 e usando o Chrome / webkit, o seguinte funcionou para mim:
https://googledrive.com/...
Uma limitação é que, no que diz respeito ao HTTP, apenas o acesso HTTP seguro parece ser possível.
Atualização:
outra limitação é que os arquivos que o Google drive pode abrir não serão acessíveis dessa maneira.
Ou seja, clicar em " Detalhes " não mostrará um URL do Google Drive.
Para superar isso:
Nota: Uma alternativa ao procedimento acima é fazer upload do arquivo com uma extensão que o Google Drive não pode abrir / não está associado.
Se você deseja visualizar o arquivo no navegador, também é possível usar um método semelhante ao fornecido pelo rufo e Torxed:
https://drive.google.com/uc?export=view&id={fileId}
Eu acho que é possível, mas apenas por um curto período de tempo
O que você precisa fazer é definir a Lista de controle de acesso do arquivo como Somente leitura pública (ou Leitura / gravação pública). Você pode fazer isso de forma programática usando a API da lista de documentos do Google ou manualmente através do botão "Compartilhar" no visualizador de imagens do Drive.
Em seguida, você pode obter o URL da imagem programaticamente usando a API da lista de documentos do Google ou a API do Google Drive (por exemplo, file.getDownloadUrl () em Java). Você também pode obter facilmente um link para a imagem manualmente clicando com o botão direito do mouse na imagem no visualizador de imagens padrão do Google Drive.
O problema é que esse link tem um tempo limitado de vida, portanto ele funcionará por um tempo e depois parará de funcionar.
Basicamente, o URL do arquivo de imagem armazenado no Drive deve estar acessível sem autenticação, uma vez que tenha sido definido publicamente, mas esse URL será alterado em algum momento. Podemos encontrar uma solução para isso no futuro, como fornecer um URL permanente que será redirecionado para esses URLs variáveis, mas sem promessas ...
Nas páginas de ajuda do Google Drive :
Para hospedar uma página da web com o Drive:
- Abra o Drive em drive.google.com e selecione um arquivo.
- Clique no botão Compartilhar na parte superior da página.
- Clique em Avançado no canto inferior direito da caixa de compartilhamento.
- Clique em Alterar ....
- Escolha On - Public na web e clique em Save.
- Antes de fechar a caixa de compartilhamento, copie o ID do documento do URL no campo abaixo de "Link para compartilhar". O ID do documento é uma sequência de letras maiúsculas e minúsculas e números entre barras na URL.
- Compartilhe o URL parecido com "www.googledrive.com/host/[doc id] onde [doc id] é substituído pelo ID do documento que você copiou na etapa 6.
Qualquer um agora pode visualizar sua página da web.
Alguns dos usuários anteriores estavam próximos, mas estavam faltando uma etapa aqui ou ali.
Aqui está um vídeo que mostra todas as etapas.
(Edit 2-Dec-14
As informações abaixo estão incorretas no que diz respeito ao novo Google Drive. Para o novo Google Drive, siga estas instruções.
Existem duas opções que você pode usar,
opção 1, clique na roda dentada no canto superior direito e reverter para o antigo Google Drive, se você reverter, use as instruções após "Finalizar edição)".
Opção 2 ou você pode seguir o trabalho que eu encontrei. Se eu encontrar uma maneira melhor do que isso, atualizarei, mas aqui está o que eu achei que funciona.
O link completo será semelhante a " https://googledrive.com/host/(folder id). A
parte um do seu link que você precisa é" https://googledrive.com/host/ "para a segunda metade. para acessar o arquivo que você deseja compartilhar.Quando
estiver na pasta com o arquivo que deseja compartilhar, consulte o link acima
(Exemplo 1 https://drive.google.com/drive/u/0/ # folders / 0B3UALYkiLexYSXZlcldoU2NpYXM )
(exemplo 2 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM/0B3UALYkiLexYRkNnOVhsUVozRU0 )
Nos dois exemplos acima, o "ID da pasta" necessário para o compartilhamento é o último grupo de letras e números após o "/", portanto, no exemplo um, é "0B3UALYkiLexYSXZlcldoU2NpYXM" no exemplo dois, é "0B3UALYkiLexYRkNnOVhsUVozRU0"
nos exemplos Eu usei, o exemplo 1 era uma pasta na minha unidade e o exemplo 2 era uma pasta dentro dessa primeira, e é por isso que ela tem todo o primeiro link antes do segundo.
Só precisamos da seção depois do "/" mais à direita.
Portanto, agora que você tem seu "ID da pasta", use a fórmula acima " https://googledrive.com/host/(folder id)"
Exemplo 1 https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM
Exemplo 2 https: // googledrive.com/host/0B3UALYkiLexYRkNnOVhsUVozRU0
Ótimo, agora que você tem esse link, abra-o em uma nova página. Ele o direcionará para a pasta compartilhada. Uma vez lá, você pode clicar com o botão direito do mouse em qualquer arquivo e selecionar "Copiar endereço do link" ou clicar em qualquer arquivo dessa pasta e ele será direcionado para a imagem hospedada, o URL na parte superior da página é o URL de hospedagem.
É assim que você faz. É muito chato e, pessoalmente, parece muito mais fácil reverter para o antigo Google Drive.
Vou tentar fazer um novo vídeo tutorial o mais rápido possível
Deixe-me saber se isso não funcionar para você e qual o problema que você está enfrentando.
End Edit)
https://www.youtube.com/watch?v=QmN22LMPdDk&feature=youtu.be
Ou você pode apenas seguir os escritos abaixo.
Essas fotos acompanham as listadas nas etapas.
https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/
Crie uma pasta no seu Google Drive que você gostaria de usar para compartilhar imagens.
Selecione essa pasta e vá para as opções de compartilhamento. Altere as opções "Quem tem acesso" de "Pessoas específicas" para "Público na Web" Todas as imagens colocadas na pasta terão um link de hospedagem, mostrado na Etapa 4
(Imagens: Alterar pasta Option.png , Alterar pasta opção 2.png e Alterar pasta opção 3.png )
coloque uma imagem nessa pasta.
selecione a imagem que você deseja compartilhar e consulte a seção de detalhes (geralmente no lado direito) para uma seção chamada "Hospedagem", você deve encontrar um link que comece com
"googledrive.com/host/( números e dígitos aleatórios que são o ID dessa pasta) / (nome do arquivo)"
Use esse link para compartilhar suas imagens. Você pode usar esse link para incorporá-los a outros sites.
(Imagens: Alterar opção de pasta 4.png e Alterar opção de pasta share.png )
A solução fornecida pela Niutech funcionou para mim, ou seja,
http://googledrive.com/host/<folderID>/<filename>
Mas existem 2 questões pendentes
Você não pode ter 2 arquivos com o mesmo nome na mesma pasta na unidade, caso contrário, este link não funcionará.
Ainda não está claro, mas o Google parece estar planejando descontinuar a hospedagem de imagens via drive. Por favor veja o link abaixo. https://support.google.com/richmedia/answer/6098968?hl=en
Especificamente para usuários do G-Suite. Conforme relatado no ponto 3 aqui , você pode usar este URL para hospedar imagens
https://drive.google.com/a/domain.com/thumbnail?id=imageID
com as seguintes substituições
domain
: substitua pelo domínio GSuite da sua empresa, como pikachu
imageID
: substitua pelo ID da imagem / ID do arquivoO pré-requisito aqui é que a imagem deva ser compartilhada via drive para o público-alvo (com cada pessoa individualmente ou talvez em toda a organização)
Se você tiver problemas com o tamanho da imagem renderizada, use as seguintes opções, como mencionado aqui
https://drive.google.com/a/domain.com/thumbnail?id=imageID&sz=w{width}-h{height}
com as seguintes substituições (além domain
e imageID
substituição)
{width}
: escreva a largura em pixels (sem chaves) como 300
{height}
: escreva a altura em pixels (sem chaves) como 200
Existe uma opção de tipo de arquivo na API do Google Drive. Talvez você possa verificar se isso resolve uma imagem válida. Eu procuraria uma opção em que, se o tipo de arquivo me der uma imagem inválida, obtenha uma nova URL direta para o arquivo. Ainda não descobri exatamente como fazer isso, mas talvez esse seja um caminho a ser tentado.
Você pode fazer isso diretamente no Drive e no Gmail. Aqui está como:
1. Carregue uma imagem no Google drive e defina as permissões para visualização (pode ser pública OU qualquer pessoa com link)
Vá para Gmail> Escrever. Selecione o + ao lado do ícone do anexo.
Selecione o ícone da unidade (formato triangular)
Navegue até a sua imagem e clique com o botão direito do mouse em copiar URL da imagem
Cole no navegador da Web ou incorpore nas páginas da Web, conforme necessário.
Tudo o que você precisa fazer é abrir seu arquivo:
Em seguida, entre no seu inspetor da Web (para Chrome Cmd-Shift-I
ou Ctrl-Shift-I
dependendo do seu sistema operacional) e obtenha o link. Feito!
O link funciona, tente aqui .
Con pode desativar o javascript no seu navegador, abrir o arquivo de imagem e, na fonte da página de visualização, ou clicar com o botão direito do mouse na imagem, você verá o link da imagem. (verifique a preferência de compartilhamento antes)
Para imagens, abra uma imagem no visualizador do google. ie
https://docs.google.com/file/d/0Bz7qe_olclTwWDNJRDRmb1pJamM/edit
então veja o código-fonte> encontre a palavra "texmex-thumb" e, ao lado, haverá um link.
goobox()
pegará o URL do seu arquivo de imagem e o mudará para ser usado diretamente como fonte de imagem.cconst goobox = (url)=>{
let dropbox_regex = /(http(s)*:\/\/)*(www\.)*(dropbox.com)/;
let drive_regex =/(http(s)*:\/\/)*(www\.)*(drive.google.com\/file\/d\/)/;
if(url.match(dropbox_regex)){
return url.replace(/(http(s)*:\/\/)*(www\.)*/, "https://dl.");
}
if(url.match(drive_regex)){
return `https://drive.google.com/uc?id=${url.replace(drive_regex, "").match(/[\w]*\//)[0].replace(/\//,"")}`;
}
return console.error('Wrong URL, not a vlid drobox or google drive url');
}
let url = 'https://drive.google.com/file/d/1PiCWHIwyQWrn4YxatPZDkB8EfegRIkIV/view'
goobox(URL); // https://drive.google.com/uc?id=1PiCWHIwyQWrn4YxatPZDkB8EfegRIkIV
No entanto, essa resposta é simples, de fato, muito simples e muitos mencionaram que basta inserir o ID da imagem no seguinte link https://drive.google.com/uc?export=view&id= {fileId}
Mas, por mais fácil que seja, criei um script para executar no console. Alimente uma variedade de links compartilháveis completos do Google Drive e converta-os no link acima. Então eles podem ser simplesmente usados como endereços estáticos.
array = ['https://drive.google.com/open?id=0B8kNn6zsgGEtUE5FaGNtcEthNWc','https://drive.google.com/open?id=0B8kNn6zsgGEtM2traVppYkhsV2s','https://drive.google.com/open?id=0B8kNn6zsgGEtNHgzT2x0MThJUlE']
function separateDriveImageId(arr) {
for (n=0;n<arr.length;n++){
str = arr[n]
for(i=0;i<str.length;i++){
if( str.charAt(i)== '=' ){
var num = i+1;
var extrctdStrng = str.substr(num)
}
}
console.log('https://drive.google.com/uc?export=view&id='+extrctdStrng)
window.open('https://drive.google.com/uc?export=view&id='+extrctdStrng,'_blank')
}
}
separateDriveImageId(array)