Questa pagina mostra come caricare oggetti nel bucket Cloud Storage dal file system locale. Un oggetto caricato è costituito dai dati che vuoi archiviare e da tutti i metadati associati. Per una panoramica concettuale, incluso come scegliere il metodo di caricamento ottimale in base alle dimensioni del file, consulta Caricamenti e download.
Per istruzioni sul caricamento dalla memoria, vedi Caricare oggetti dalla memoria.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per caricare oggetti in un bucket, chiedi all'amministratore di concederti il ruolo IAM Utente oggetti Storage (roles/storage.objectUser
) nel bucket. Questo ruolo predefinito contiene le autorizzazioni necessarie per caricare un oggetto in un bucket. Per visualizzare esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
storage.objects.create
storage.objects.delete
- Questa autorizzazione è richiesta solo per i caricamenti che sovrascrivono un oggetto esistente.
storage.objects.get
- Questa autorizzazione è richiesta solo se prevedi di utilizzare Google Cloud CLI per eseguire le attività in questa pagina.
storage.objects.list
- Questa autorizzazione è richiesta solo se prevedi di utilizzare Google Cloud CLI per eseguire le attività in questa pagina. Questa autorizzazione è necessaria anche se vuoi utilizzare la console Google Cloud per verificare gli oggetti che hai caricato.
Se prevedi di utilizzare la console Google Cloud per eseguire le attività in questa pagina, avrai bisogno anche dell'autorizzazione storage.buckets.list
, che non è inclusa nel ruolo Utente oggetti Storage (roles/storage.objectUser
). Per ottenere questa autorizzazione, chiedi all'amministratore di concederti il ruolo Amministratore Storage (roles/storage.admin
) per il progetto.
Puoi ottenere queste autorizzazioni anche con altri ruoli predefiniti o ruoli personalizzati.
Per informazioni sulla concessione dei ruoli sui bucket, consulta Utilizzare IAM con i bucket.
Carica un oggetto in un bucket
Completa i seguenti passaggi per caricare un oggetto in un bucket:
Console
- Nella console Google Cloud, vai alla pagina Bucket di Cloud Storage.
Nell'elenco dei bucket, fai clic sul nome del bucket in cui vuoi caricare un oggetto.
Nella scheda Oggetti del bucket:
Trascina i file dal desktop o dal gestore di file al riquadro principale della console Google Cloud.
Fai clic sul pulsante Carica file, seleziona i file che vuoi caricare nella finestra di dialogo visualizzata e fai clic su Apri.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni Cloud Storage non riuscite nella console Google Cloud, consulta la pagina Risoluzione dei problemi.
Riga di comando
Utilizza il comando gcloud storage cp
:
gcloud storage cp OBJECT_LOCATION gs://DESTINATION_BUCKET_NAME
Dove:
OBJECT_LOCATION
è il percorso locale dell'oggetto. Ad esempio,Desktop/dog.png
.DESTINATION_BUCKET_NAME
è il nome del bucket in cui stai caricando l'oggetto. Ad esempio,my-bucket
.
Se l'esito è positivo, la risposta è simile al seguente esempio:
Completed files 1/1 | 164.3kiB/164.3kiB
Puoi impostare metadati degli oggetti a chiave fissa e personalizzati come parte del caricamento dell'oggetto utilizzando i flag di comando.
Librerie client
C++
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API C++ di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API C# di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Go di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Java di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Nel seguente esempio viene caricato un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
Nel seguente esempio vengono caricati contemporaneamente tutti gli oggetti con un prefisso comune:
Node.js
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Node.js di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Nel seguente esempio viene caricato un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
Nel seguente esempio vengono caricati contemporaneamente tutti gli oggetti con un prefisso comune:
PHP
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API PHP di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Python di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Nel seguente esempio viene caricato un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
Nel seguente esempio vengono caricati contemporaneamente tutti gli oggetti con un prefisso comune:
Ruby
Per ulteriori informazioni, consulta la documentazione di riferimento dell'API Ruby di Cloud Storage.
Per eseguire l'autenticazione su Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Terraform
Puoi utilizzare una risorsa Terraform per caricare un oggetto.
È necessario specificare content
o source
.
API REST
API JSON
L'API JSON fa distinzione tra i caricamenti di contenuti multimediali, in cui nella richiesta sono inclusi solo i dati degli oggetti, e i caricamenti multiparte dell'API JSON, in cui sia i dati dell'oggetto sia i metadati dell'oggetto sono inclusi nella richiesta.
Caricamento di contenuti multimediali (un caricamento di una singola richiesta senza metadati dell'oggetto)
Installa e inizializzatogcloud CLI per generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API JSON con una richiesta di oggettoPOST
:curl -X POST --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=media&name=OBJECT_NAME"
Dove:
OBJECT_LOCATION
è il percorso locale dell'oggetto. Ad esempio,Desktop/dog.png
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:image/png
.BUCKET_NAME
è il nome del bucket in cui carichi l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome con codifica URL che vuoi assegnare all'oggetto. Ad esempio,pets/dog.png
, con codifica URLpets%2Fdog.png
.
Caricamento di più parti dell'API JSON (caricamento di una singola richiesta che include metadati degli oggetti)
Installa e inizializzatogcloud CLI per generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Crea un file
multipart/related
contenente le seguenti informazioni:--BOUNDARY_STRING Content-Type: application/json; charset=UTF-8 OBJECT_METADATA --BOUNDARY_STRING Content-Type: OBJECT_CONTENT_TYPE OBJECT_DATA --BOUNDARY_STRING--
Dove:
BOUNDARY_STRING
è una stringa da te definita che identifica le diverse parti del file con più parti. Ad esempio,separator_string
.OBJECT_METADATA
sono i metadati che vuoi includere per il file, in formato JSON. Questa sezione deve includere almeno un attributoname
per l'oggetto, ad esempio{"name": "myObject"}
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:text/plain
.OBJECT_DATA
rappresenta i dati relativi all'oggetto.
Ad esempio:
--separator_string Content-Type: application/json; charset=UTF-8 {"name":"my-document.txt"} --separator_string Content-Type: text/plain This is a text file. --separator_string--
Utilizza
cURL
per chiamare l'API JSON con una richiesta di oggettoPOST
:curl -X POST --data-binary @MULTIPART_FILE_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: multipart/related; boundary=BOUNDARY_STRING" \ -H "Content-Length: MULTIPART_FILE_SIZE" \ "https://storage.googleapis.com/upload/storage/v1/b/BUCKET_NAME/o?uploadType=multipart"
Dove:
MULTIPART_FILE_LOCATION
è il percorso locale al file multiparte che hai creato nel passaggio 2. Ad esempio,Desktop/my-upload.multipart
.BOUNDARY_STRING
è la stringa del limite definita nel Passaggio 2. Ad esempio,my-boundary
.MULTIPART_FILE_SIZE
è la dimensione totale, in byte, del file con più parti creato nel passaggio 2. Ad esempio,2000000
.BUCKET_NAME
è il nome del bucket in cui carichi l'oggetto. Ad esempio,my-bucket
.
Se la richiesta riesce, il server restituisce il codice di stato HTTP 200 OK
insieme ai metadati del file.
API XML
Installa e inizializzatogcloud CLI per generare un token di accesso per l'intestazione
Authorization
.In alternativa, puoi creare un token di accesso utilizzando OAuth 2.0 Playground e includerlo nell'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML con una richiesta di oggettoPUT
:curl -X PUT --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ "https://storage.googleapis.com/BUCKET_NAME/OBJECT_NAME"
Dove:
OBJECT_LOCATION
è il percorso locale dell'oggetto. Ad esempio,Desktop/dog.png
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:image/png
.BUCKET_NAME
è il nome del bucket in cui carichi l'oggetto. Ad esempio,my-bucket
.OBJECT_NAME
è il nome con codifica URL che vuoi assegnare all'oggetto. Ad esempio,pets/dog.png
, con codifica URLpets%2Fdog.png
.
Puoi impostare metadati degli oggetti aggiuntivi come parte del caricamento dell'oggetto nelle intestazioni della richiesta, proprio come nell'esempio precedente viene impostato il valore Content-Type
. Quando si utilizza l'API XML, i metadati possono essere impostati solo nel momento in cui l'oggetto viene scritto, ad esempio durante il caricamento, la copia o la sostituzione dell'oggetto. Per ulteriori informazioni, consulta Modifica dei metadati degli oggetti.
Passaggi successivi
- Scopri di più sui requisiti di denominazione per gli oggetti.
- Trasferisci oggetti dall'istanza Compute Engine.
- Trasferisci i dati da cloud provider o da altre origini online, ad esempio gli elenchi di URL.
- Controlla chi ha accesso agli oggetti e ai bucket.
- Visualizza i metadati dell'oggetto, incluso l'URL dell'oggetto.
Provalo
Se non conosci Google Cloud, crea un account per valutare le prestazioni di Cloud Storage in scenari reali. I nuovi clienti ricevono anche 300 $ di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
Prova Cloud Storage gratuitamente