Zastanawiałem się, czy można uzyskać dostęp do plików takich jak obrazy przechowywane na Dysku Google w publicznej witrynie internetowej lub wyświetlać je.
Zastanawiałem się, czy można uzyskać dostęp do plików takich jak obrazy przechowywane na Dysku Google w publicznej witrynie internetowej lub wyświetlać je.
Odpowiedzi:
Obejściem tego problemu jest skorzystanie fileId
z, Google Drive SDK API
a następnie użycie tego Url
:
https://drive.google.com/uc?export=view&id= {fileId}
Będzie to stały link do Twojego pliku na Dysku Google (obraz lub cokolwiek innego).
Uwaga: ten link wydaje się podlegać kwotom. Więc nie jest idealny do publicznego / masowego udostępniania.
AKTUALIZACJA: Jak ogłoszono , Google wycofało tę funkcję w sierpniu 2016 r. Oto ostatnia aktualizacja od Google z alternatywami.
Tak, to możliwe. Pod warunkiem, że umieścisz swoje pliki w folderze publicznym, możesz pobrać dowolny plik do folderu pod tym adresem URL:
https://googledrive.com/host/<folderID>/<filename>
Oto prosty link do widoku:
https://drive.google.com/uc?id=FILE_ID
np. https://drive.google.com/uc?id=0B9o1MNFt5ld1N3k1cm9tVnZxQjg
Możesz zrobić to samo dla innych typów plików, np. MP3, PDF itp.
https://drive.google.com/file/d/2B8NbrE732XHNLThjZWZzMMVCDeVFpLVVXUkFjT3h2Qloweslz/edit?usp=sharing
zmienił się w https://drive.google.com/uc?id=2B8NbrE732XHNLThjZWZzMMVCDeVFpLVVXUkFjT3h2Qloweslz
).
data.response.webContentLink
. Będzie to miało &export=download
koniec, który trzeba tylko przyciąć.
oto jak od @ https://productforums.google.com/forum/#!topic/drive/yU_yF9SI_z0/discussion
1- prześlij swój obraz
2- kliknij prawym przyciskiem myszy i wybierz „uzyskaj link do udostępnienia”
3- skopiuj link, który powinien wyglądać
4-zmienić open?
się uc?
i używać go jak
<img src="https://drive.google.com/uc?id=xxxxx">
http:
lub https:
podczas odwoływania się do czegokolwiek z sieci, aby uniknąć problemów z serwerem ur.drive.google.com
?
AKTUALIZACJA: Jak ogłoszono , Google wycofało tę funkcję w sierpniu 2016 r. Oto ostatnia aktualizacja od Google z alternatywami.
Według stanu na kwiecień 2013 r. I przy użyciu przeglądarki Chrome / webkit działało dla mnie:
https://googledrive.com/...
Jednym z ograniczeń jest to, że jeśli chodzi o HTTP, wydaje się, że możliwy jest tylko bezpieczny dostęp HTTP.
Aktualizacja:
Kolejnym ograniczeniem jest to, że pliki, które można otworzyć na dysku Google, nie będą w ten sposób dostępne .
Oznacza to, że kliknięcie przycisku „ Szczegóły ” nie spowoduje wyświetlenia adresu URL dysku Google.
Aby temu zaradzić:
Uwaga: Alternatywą dla powyższej procedury jest przesłanie pliku z rozszerzeniem, którego Dysk Google nie może otworzyć / nie jest powiązany.
Jeśli chcesz wyświetlić plik w przeglądarce, możesz także użyć metody podobnej do tej dostarczonej przez rufo i Torxed:
https://drive.google.com/uc?export=view&id={fileId}
Myślę, że jest to możliwe, ale tylko przez krótki czas
To, co musisz zrobić, to ustawić Listę kontroli dostępu do pliku na Publiczny tylko do odczytu (lub Publiczny odczyt / zapis). Możesz to zrobić programowo, używając interfejsu API Google Document List lub ręcznie, klikając przycisk „Udostępnij” w przeglądarce zdjęć na Dysku.
Następnie możesz programowo uzyskać adres URL obrazu, używając interfejsu API Google Document List lub interfejsu API Dysku Google (tj. File.getDownloadUrl () w Javie). Możesz również łatwo uzyskać link do obrazu ręcznie, klikając obraz prawym przyciskiem myszy w domyślnej przeglądarce obrazów na Dysku Google.
Problem polega na tym, że ten link ma ograniczony czas życia, więc będzie działał przez chwilę, a następnie przestanie działać.
Zasadniczo adres URL pliku obrazu zapisanego na Dysku powinien być dostępny bez żadnego uwierzytelnienia, gdy zostanie udostępniony publicznie, ale ten adres URL w pewnym momencie się zmieni. W przyszłości możemy znaleźć rozwiązanie tego problemu, takie jak zapewnienie stałego adresu URL, który przekieruje do tych zmieniających się adresów URL, ale bez obietnic ...
Ze stron pomocy dysku Google :
Aby hostować stronę internetową za pomocą Dysku:
- Otwórz Dysk na drive.google.com i wybierz plik.
- Kliknij przycisk Udostępnij u góry strony.
- Kliknij Zaawansowane w prawym dolnym rogu pola udostępniania.
- Kliknij Zmień ....
- Wybierz Włącz - Publiczny w Internecie i kliknij Zapisz.
- Przed zamknięciem pola udostępniania skopiuj identyfikator dokumentu z adresu URL w polu poniżej „Link do udostępniania”. Identyfikator dokumentu to ciąg wielkich i małych liter oraz cyfr między ukośnikami w adresie URL.
- Udostępnij adres URL, który wygląda jak „www.googledrive.com/host/[doc id], gdzie [doc id] jest zastąpione identyfikatorem dokumentu skopiowanym w kroku 6.
Każdy może teraz wyświetlić Twoją stronę internetową.
Niektórzy z poprzednich użytkowników byli blisko, ale brakowało im kroku tu i tam.
Oto wideo, które pokazuje wszystkie kroki.
(Edycja 2 grudnia 14
Poniższe informacje są niepoprawne, jeśli chodzi o nowy Dysk Google. W przypadku Nowego Dysku Google postępuj zgodnie z tymi instrukcjami.
Są dwie opcje, których możesz użyć,
opcję 1 możesz kliknąć koło zębate w prawym górnym rogu i powróć do starego dysku Google, JEŚLI przywrócisz, postępuj zgodnie z instrukcjami po „Zakończ edycję)”.
Opcja 2 lub możesz śledzić obejście, które znalazłem. Jeśli znajdę lepszy sposób niż ten, zaktualizuję go, ale oto, co znalazłem, co działa.
Pełny link będzie wyglądał następująco: „ https://googledrive.com/host/(folder id)
Część pierwszego linku, której potrzebujesz, to„ https://googledrive.com/host/ ”w drugiej połowie będziesz potrzebować aby przejść do pliku, który chcesz udostępnić.
Gdy znajdziesz się w folderze z plikiem, który chcesz udostępnić, spójrz na powyższy link
(przykład 1 https://drive.google.com/drive/u/0/ # foldery / 0B3UALYkiLexYSXZlcldoU2NpYXM )
(Przykład 2 https://drive.google.com/drive/u/0/#folders/0B3UALYkiLexYSXZlcldoU2NpYXM/0B3UALYkiLexYRkNnOVhsUVozRU0 )
W obu powyższych przykładach „Identyfikator folderu”, którego potrzebujesz do udostępnienia, to ostatnia grupa liter i cyfr po „/”, więc w przykładzie pierwszym jest to „0B3UALYkiLexYSXZlcldoU2NpYXM” w przykładzie drugim to „0B3UALYkiLexYRkNnOVhsUVozRU0”
W przykładach Użyłem, przykład 1 był folderem na moim dysku, a przykład 2 był folderem wewnątrz tego pierwszego, dlatego ma cały pierwszy link przed drugim.
Potrzebujemy tylko sekcji po znaku „/” najdalej po prawej stronie.
Teraz, gdy masz już „Identyfikator folderu”, weź powyższą formułę „ https://googledrive.com/host/(folder id)”
Przykład 1 https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM
Przykład 2 https: // googledrive.com/host/0B3UALYkiLexYRkNnOVhsUVozRU0
Świetnie, skoro masz już ten link, otwórz go na nowej stronie. Nastąpi przekierowanie do folderu współdzielonego. Tam możesz kliknąć prawym przyciskiem myszy dowolny plik i wybrać „Kopiuj adres linku” lub kliknąć dowolny plik w tym folderze, aby przejść do hostowanego obrazu. Adres URL na górze strony to adres URL hosta.
Tak to robisz. Jest to dość denerwujące i osobiście wydaje się, że o wiele łatwiej jest po prostu wrócić do starego dysku Google.
Spróbuję zrobić nowy film instruktażowy jak najszybciej
Daj mi znać, jeśli to nie zadziała i jaki masz problem.
Zakończ edycję)
https://www.youtube.com/watch?v=QmN22LMPdDk&feature=youtu.be
Lub możesz po prostu postępować zgodnie z poniższymi napisanymi.
Te zdjęcia pasują do tych wymienionych w krokach.
https://googledrive.com/host/0B3UALYkiLexYSXZlcldoU2NpYXM/
Utwórz folder na Dysku Google, którego chcesz używać do udostępniania zdjęć.
Wybierz ten folder i przejdź do opcji udostępniania. Zmień opcje „Kto ma dostęp” z „Określonych osób” na „Publiczne w sieci” Wszystkie obrazy umieszczone w folderze będą miały na nich link do hostingu pokazany w kroku 4
(Obrazy: Zmień opcję folderu.png , Zmień opcję folderu 2.png i Zmień opcję folderu 3.png )
umieść obraz w tym folderze.
wybierz obraz, który chcesz udostępnić, i spójrz na sekcję szczegółów (zwykle po prawej stronie), aby znaleźć sekcję oznaczoną jako „Hosting”. Powinieneś znaleźć link zaczynający się od
„googledrive.com/host/( losowe liczby i cyfry, które są identyfikatorem tego folderu) / (nazwa pliku)”
Użyj tego linku, aby udostępnić swoje zdjęcia. Możesz użyć tego linku, aby osadzić je na innych stronach internetowych.
(Obrazy: Zmień opcję folderu 4.png i Zmień opcję folderu share.png )
Rozwiązanie dostarczone przez Niutech działało dla mnie tj
http://googledrive.com/host/<folderID>/<filename>
Ale są jeszcze 2 nierozwiązane problemy
Nie możesz mieć 2 plików o tej samej nazwie w tym samym folderze na dysku, inaczej ten link nie zadziała.
Nie jest to jeszcze jasne, ale wydaje się, że Google planuje wycofać hosting obrazów za pomocą dysku. zobacz poniższy link. https://support.google.com/richmedia/answer/6098968?hl=pl
Specjalnie dla użytkowników G-Suite. Jak podano w punkcie 3 tutaj , możesz użyć tego adresu URL do hostowania obrazu
https://drive.google.com/a/domain.com/thumbnail?id=imageID
z następującymi zamiennikami
domain
: zastąp domeną GSuite swojej firmy, np pikachu
imageID
: zamień na identyfikator obrazu / identyfikator plikuWarunkiem jest tutaj, aby obraz był udostępniany za pośrednictwem napędu do docelowej grupy docelowej (z każdą osobą indywidualnie lub może przez organizację)
Jeśli napotkasz problemy z rozmiarem renderowanego obrazu, skorzystaj z poniższych opcji, jak wspomniano tutaj
https://drive.google.com/a/domain.com/thumbnail?id=imageID&sz=w{width}-h{height}
z następującymi zamiennikami (oprócz domain
i imageID
zamienników)
{width}
: wpisz szerokość w pikselach (bez nawiasów klamrowych) jak 300
{height}
: wpisz wysokość w pikselach (bez nawiasów klamrowych) jak 200
EDYCJA: Od 2020 r. Działa. Większość poprzednich odpowiedzi jest nieaktualna.
Wszystko, co musisz zrobić, to otworzyć plik:
Następnie przejdź do inspektora internetowego (w przypadku Chrome Cmd-Shift-I
lub w Ctrl-Shift-I
zależności od systemu operacyjnego) i uzyskaj link. Gotowe!
Link działa, spróbuj tutaj .
W interfejsie API Dysku Google dostępna jest opcja typu pliku. Być może możesz sprawdzić, czy to rozwiązuje prawidłowy obraz. Spojrzałbym na opcję, w której jeśli typ pliku da mi nieprawidłowy obraz, to uzyskam nowy bezpośredni adres URL pliku. Nie wiem jednak dokładnie, jak to zrobić, ale może to jest droga do wypróbowania.
Możesz to zrobić bezpośrednio z Dysku i Gmaila. Oto jak:
1. Prześlij obraz na dysk Google i ustaw uprawnienia do przeglądania (może być publiczny LUB każdy z linkiem)
Przejdź do Gmaila> Utwórz. Wybierz + obok ikony załącznika.
Wybierz ikonę napędu (kształt trójkąta)
Przejdź do swojego obrazu i kliknij prawym przyciskiem myszy kopię adresu URL obrazu
Wklej w przeglądarce internetowej lub umieść na stronach internetowych w razie potrzeby.
1. Zmień ustawienia zdjęcia na publiczne.
2. Pobierz link do udostępnienia.
3. Przejdź do tej witryny i wygeneruj bezpośredni link do pobrania.
Pracował dla mnie!
Con może wyłączyć javascript w przeglądarce, otwórz plik obrazu, aw źródle strony widoku lub kliknij obraz prawym przyciskiem myszy, zobaczysz link do obrazu. (sprawdź preferencje udostępniania wcześniej)
W przypadku obrazów otwórz obraz w przeglądarce Google. to znaczy
https://docs.google.com/file/d/0Bz7qe_olclTwWDNJRDRmb1pJamM/edit
następnie zobacz źródło> znajdź słowo „texmex-thumb”, a na bok będzie link.
goobox()
pobierze adres URL pliku obrazu i zmieni go, aby był używany bezpośrednio jako źródło obrazu.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
Jednak ta odpowiedź jest prosta, w rzeczywistości bardzo prosta i tak, wielu wspomniało, że wystarczy umieścić identyfikator obrazu w poniższym linku https://drive.google.com/uc?export=view&id= {fileId}
Ale choć jest to łatwe, stworzyłem skrypt do uruchomienia w konsoli. Wprowadź szereg kompletnych udostępnialnych linków z dysku Google i przekonwertuj je na powyższy link. Następnie można ich po prostu użyć jako adresów statycznych.
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)