Αναρωτιόμουν αν είναι δυνατή η πρόσβαση/εμφάνιση αρχείων όπως εικόνες που είναι αποθηκευμένες στο Google Drive σε έναν δημόσιο ιστότοπο.
Μια λύση είναι να λάβετε το fileId
με το Google Drive SDK API
και στη συνέχεια να χρησιμοποιήσετε αυτό το Url
:
https://drive.google.com/uc?export=view&id={fileId}
Αυτό θα είναι ένας μόνιμος σύνδεσμος προς το αρχείο σας στο Google Drive (εικόνα ή οτιδήποτε άλλο).
Σημείωση: αυτός ο σύνδεσμος φαίνεται να υπόκειται σε ποσοστώσεις. Επομένως, δεν είναι ιδανικό για δημόσια/μαζική κοινή χρήση.
Νομίζω ότι είναι εφικτό, αλλά μόνο για μικρό χρονικό διάστημα.
Αυτό που πρέπει να κάνετε είναι να ορίσετε τη Λίστα Ελέγχου Πρόσβασης του αρχείου σε Δημόσια Μόνο για ανάγνωση (ή Δημόσια για ανάγνωση/εγγραφή). Μπορείτε να το κάνετε αυτό προγραμματιστικά χρησιμοποιώντας το Google Document List API, ή χειροκίνητα μέσω του κουμπιού "Share" στην προβολή εικόνων του Drive.
Στη συνέχεια, μπορείτε να λάβετε τη διεύθυνση URL της εικόνας προγραμματιστικά είτε χρησιμοποιώντας το Google Document List API είτε χρησιμοποιώντας το Google Drive API (π.χ. file.getDownloadUrl() σε Java). Μπορείτε επίσης εύκολα να λάβετε έναν σύνδεσμο προς την εικόνα χειροκίνητα κάνοντας δεξί κλικ στην εικόνα στον προεπιλεγμένο προβολέα εικόνων του Google Drive.
Το πρόβλημα είναι ότι αυτός ο σύνδεσμος έχει περιορισμένο χρόνο ζωής, οπότε θα λειτουργήσει για λίγο και μετά θα σταματήσει να λειτουργεί.
Βασικά, η διεύθυνση URL του αρχείου εικόνας που είναι αποθηκευμένο στο Drive θα πρέπει να είναι προσβάσιμη χωρίς έλεγχο ταυτότητας από τη στιγμή που έχει οριστεί κοινόχρηστη δημόσια, αλλά αυτή η διεύθυνση URL θα αλλάξει κάποια στιγμή. Ίσως βρούμε μια λύση για αυτό στο μέλλον, όπως η παροχή μιας μόνιμης διεύθυνσης URL που θα ανακατευθύνει σε αυτές τις μεταβαλλόμενες διευθύνσεις URL, αλλά δεν υπόσχομαι τίποτα...
Υπάρχει μια επιλογή τύπου αρχείου στο API του Google Drive. Θα μπορούσατε, ίσως, να ελέγξετε αν αυτό επιλύεται σε μια έγκυρη εικόνα. Εγώ θα έβλεπα μια επιλογή όπου αν ο τύπος αρχείου μου δίνει μια άκυρη εικόνα, τότε θα έπαιρνα μια νέα άμεση διεύθυνση URL για το αρχείο. Δεν έχω καταλάβει ακριβώς πώς να το κάνω αυτό όμως, αλλά ίσως αυτό να είναι ένα μονοπάτι που πρέπει να δοκιμάσετε.