Puoi utilizzare Cloud Storage per archiviare e gestire file, ad esempio film, immagini o altri contenuti statici.
Questo documento descrive come utilizzare le librerie client di Cloud per Cloud Storage nella tua app per archiviare e recuperare dati da Cloud Storage.
Prima di iniziare
- Segui le istruzioni riportate in Configurazione dell'ambiente di sviluppo per configurare l'ambiente e il progetto e per capire come sono strutturate le app in App Engine. Annota e salva l'ID progetto, perché ti servirà per eseguire l'applicazione di esempio descritta in questo documento.
Assicurati di creare un bucket Cloud Storage per la tua applicazione richiamando il seguente comando:
gcloud storage buckets create gs://YOUR_BUCKET_NAME
Rendi il bucket pubblicamente leggibile in modo che possa gestire file:
gcloud storage buckets add-iam-policy-binding gs://<var>YOUR_BUCKET_NAME</var> --member=allUsers --role=roles/storage.objectViewer
Scarica il campione
Vai
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/golang-samples.git
cd golang-samples/appengine_flexible/storage
Java
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/java-docs-samples
cd java-docs-samples/flexible/java-17/cloudstorage
Node.js
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples/
cd nodejs-docs-samples/appengine/storage/flexible
PHP
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/php-docs-samples
cd php-docs-samples/appengine/flexible/storage
Python
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples
cd python-docs-samples/appengine/flexible/storage
Ruby
Per clonare il repository:
git clone https://github.com/GoogleCloudPlatform/ruby-docs-samples
cd ruby-docs-samples/appengine/flexible/storage/
.NET
Scarica l'app di esempio ed estraila.
Se utilizzi la riga di comando, vai alla seguente directory dell'app:
dotnet-docs-samples\appengine\flexible\CloudStorage\CloudStorage.Sample
Per eseguire l'applicazione localmente, configura un service account e scarica le credenziali:
Apri l'elenco delle credenziali nella console Google Cloud .
Fai clic su Crea credenziali.
Seleziona Chiave del service account.
Si apre una finestra Crea account di servizio account.
Fai clic sull'elenco Service account e seleziona Service account predefinito di Compute Engine.
Seleziona JSON per il Tipo di chiave.
Fai clic su Crea.
Viene visualizzata una finestra Nuova chiave privata e la chiave privata per viene scaricata automaticamente.
Fai clic su Chiudi.
Modifica la configurazione del progetto e installa le dipendenze
Vai
In app.yaml
, imposta GCLOUD_STORAGE_BUCKET
. Questo valore è il nome del bucket Cloud Storage che hai creato in precedenza.
Java
In app.yaml
, imposta BUCKET_NAME
sul Cloud Storage che hai creato in precedenza per il tuo progetto.
In pom.xml
, imposta com.google.cloud
come dipendenza e specifica
google-cloud-storage
come artifactID per questa dipendenza. In questo modo, vengono fornite
le funzioni per utilizzare Cloud Storage.
Node.js
In app.yaml
, aggiungi l'ID progetto al valore dell'ambiente GOOGLE_CLOUD_PROJECT
. Quindi imposta il valore dell'ambiente GCLOUD_STORAGE_BUCKET
sul nome del bucket Cloud Storage che hai creato in precedenza.
In package.json
, aggiungi @google-cloud/storage
come dipendenza, che
fornisce le funzioni per utilizzare Cloud Storage.
Consulta il file README.md
per istruzioni sull'esecuzione e il test in locale.
PHP
In app.yaml
, imposta CLOUD_STORAGE_BUCKET
; questo valore è il nome del bucket Cloud Storage che hai creato in precedenza.
In composer.json
, nota che devi includere la libreria client Cloud,
perché fornisce le funzioni di Cloud Storage.
Python
In app.yaml
, imposta GOOGLE_STORAGE_BUCKET
; questo valore è il nome del bucket Cloud Storage che hai creato in precedenza.
In requirements.txt
, nota che devi includere la
libreria google-cloud-storage
, perché fornisce le funzioni
di Cloud Storage.
Ruby
In app.yaml
, imposta GCLOUD_STORAGE_BUCKET
sul Cloud Storage che hai creato in precedenza per il tuo progetto.
Tieni presente che devi includere la libreria gcloud
in Gemfile
per utilizzare le funzioni di Cloud Storage.
.NET
Nel file app.yaml
, imposta TEST_GOOGLE_BUCKET_NAME
sul bucket Cloud Storage
che hai creato in precedenza per il tuo progetto.
env_variables:
TEST_GOOGLE_BUCKET_NAME: [your-bucket-name]
Codice dell'applicazione
Vai
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore del caricamento scrive il file nel bucket Cloud Storage utilizzando la funzione Cloud Storage NewWriter.
Tieni presente che per recuperare questo file da Cloud Storage, dovrai specificare il nome del bucket e il nome del file. Devi memorizzare questi valori nella tua app per utilizzarli in futuro.
Java
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file
da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore delle richieste doPost
scrive il file nel bucket Cloud Storage utilizzando Storage.create.
Tieni presente che per recuperare questo file da Cloud Storage, dovrai specificare il nome del bucket e il nome del file. Devi memorizzare questi valori nella tua app per utilizzarli in futuro.
Node.js
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore di caricamento carica il contenuto del file in un blob e lo scrive in Cloud Storage.
Tieni presente che dopo il caricamento del file su Cloud Storage, viene restituito l'URL pubblico di questo file, che puoi utilizzare per pubblicarlo direttamente da Cloud Storage. Devi memorizzare questo valore nella tua app per un utilizzo futuro.
PHP
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore di caricamento carica il contenuto del file in un blob e lo scrive in Cloud Storage.
Tieni presente che dopo il caricamento del file su Cloud Storage, viene restituito l'URL pubblico di questo file, che puoi utilizzare per pubblicarlo direttamente da Cloud Storage. Devi memorizzare questo valore nella tua app per un utilizzo futuro.
Python
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore di caricamento carica il contenuto del file in un blob Cloud Storage e lo scrive nel bucket Cloud Storage.
Tieni presente che dopo il caricamento del file su Cloud Storage, viene restituito l'URL pubblico di questo file, che puoi utilizzare per pubblicarlo direttamente da Cloud Storage. Devi memorizzare questo valore nella tua app per un utilizzo futuro.
Ruby
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore di caricamento carica il contenuto del file in un blob e lo scrive in Cloud Storage.
Tieni presente che dopo il caricamento del file su Cloud Storage, viene restituito l'URL pubblico di questo file, che puoi utilizzare per pubblicarlo direttamente da Cloud Storage. Devi memorizzare questo valore nella tua app per un utilizzo futuro.
.NET
L'applicazione di esempio presenta una pagina web che chiede all'utente di fornire un file da archiviare in Cloud Storage. Quando l'utente seleziona un file e fa clic su Invia, il gestore di caricamento carica il contenuto del file in un blob e lo scrive in Cloud Storage.
Tieni presente che dopo il caricamento del file su Cloud Storage, viene restituito l'URL pubblico di questo file, che puoi utilizzare per pubblicarlo direttamente da Cloud Storage. Devi memorizzare questo valore nella tua app per un utilizzo futuro.
Per ulteriori informazioni
Per informazioni complete su Cloud Storage, consulta la documentazione di Cloud Storage.