Questa pagina mostra come caricare oggetti nel bucket Cloud Storage dal file system locale. Un oggetto caricato è costituito dai dati che vuoi archiviare insieme a eventuali metadati associati. Per una panoramica concettuale, incluse informazioni su come scegliere il metodo di caricamento ottimale in base alle dimensioni del file, consulta Caricamenti e download.
Per istruzioni sul caricamento dalla memoria, consulta 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
) per il bucket. Questo ruolo predefinito contiene le autorizzazioni necessarie per caricare un oggetto in un bucket. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:
Autorizzazioni obbligatorie
storage.objects.create
storage.objects.delete
- Questa autorizzazione è necessaria 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 nei 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 relativa al bucket:
Trascina i file dal desktop o da gestore di file nel riquadro principale della console Google Cloud.
Fai clic sul pulsante Carica file, seleziona i file da caricare nella finestra di dialogo visualizzata e fai clic su Apri.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Google Cloud, consulta 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 sarà simile al seguente esempio:
Completed files 1/1 | 164.3kiB/164.3kiB
Puoi impostare metadati degli oggetti personalizzati e a chiave fissa come parte del caricamento dell'oggetto utilizzando i flag di comando.
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C++ di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API C# di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Go di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Java di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Node.js di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Nell'esempio seguente viene caricato un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
L'esempio seguente carica contemporaneamente tutti gli oggetti con un prefisso comune:
PHP
Per maggiori informazioni, consulta la documentazione di riferimento dell'API PHP di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Python di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Nell'esempio seguente viene caricato un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
L'esempio seguente carica contemporaneamente tutti gli oggetti con un prefisso comune:
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Ruby di Cloud Storage.
Per eseguire l'autenticazione in Cloud Storage, configura Credenziali predefinite dell'applicazione. Per maggiori informazioni, consulta Configurare l'autenticazione per un ambiente di sviluppo locale.
Terraform
Per caricare un oggetto puoi utilizzare una risorsa Terraform.
È necessario specificare content
o source
.
API REST
API JSON
L'API JSON fa una distinzione tra caricamenti multimediali, in cui nella richiesta sono inclusi solo i dati degli oggetti, e caricamenti multiparte dell'API JSON, in cui sia i dati degli oggetti che i metadati degli oggetti sono inclusi nella richiesta.
Caricamento di elementi multimediali (caricamento di una singola richiesta senza metadati dell'oggetto)
Assicurati che gcloud CLI sia installato e inizializzatoper 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 diPOST
oggetto: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 contenuti dell'oggetto. Ad esempio:image/png
.BUCKET_NAME
è il nome del bucket in cui stai caricando 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 URL comepets%2Fdog.png
.
Caricamento multiparte su API JSON (un caricamento su richiesta singola che include i metadati degli oggetti)
Assicurati che gcloud CLI sia installato e inizializzatoper 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
è 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 contenuti dell'oggetto. Ad esempio:text/plain
.OBJECT_DATA
è i dati dell'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 diPOST
oggetto: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 del file multiparte creato nel passaggio 2. Ad esempio,Desktop/my-upload.multipart
.BOUNDARY_STRING
è la stringa di confine definito nel passaggio 2. Ad esempio,my-boundary
.MULTIPART_FILE_SIZE
è la dimensione totale, in byte, del file multiparte che hai creato nel passaggio 2. Ad esempio,2000000
.BUCKET_NAME
è il nome del bucket in cui stai caricando l'oggetto. Ad esempio,my-bucket
.
Se la richiesta ha esito positivo, il server restituisce il codice di stato HTTP 200 OK
insieme ai metadati del file.
API XML
Assicurati che gcloud CLI sia installato e inizializzatoper 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 diPUT
oggetto: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 contenuti dell'oggetto. Ad esempio:image/png
.BUCKET_NAME
è il nome del bucket in cui stai caricando 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 URL comepets%2Fdog.png
.
Puoi impostare metadati oggetto aggiuntivi come parte del caricamento dell'oggetto nelle intestazioni della richiesta, come nel caso dei set di esempi precedenti 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 la sezione Modifica dei metadati degli oggetti.
Passaggi successivi
- Scopri di più sui requisiti di denominazione degli oggetti.
- Trasferisci oggetti dall'istanza Compute Engine.
- Trasferire dati da provider cloud o altre origini online, come elenchi di URL.
- Controlla chi ha accesso ai tuoi oggetti e 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 gratis