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, inclusa la scelta del 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 archiviazione (roles/storage.objectUser
) nel bucket. Questo ruolo predefinito contiene le autorizzazioni necessarie per caricare un oggetto in un bucket. Per visualizzare le autorizzazioni esatte richieste, 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 è necessaria solo se prevedi di utilizzare Google Cloud CLI per eseguire le attività in questa pagina.
storage.objects.list
- Questa autorizzazione è necessaria 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, ti servirà anche l'autorizzazione storage.buckets.list
, che non è inclusa nel ruolo Utente oggetto archiviazione (roles/storage.objectUser
). Per ottenere questa autorizzazione, chiedi all'amministratore di concederti il ruolo Amministratore archiviazione (roles/storage.admin
) nel progetto.
Puoi anche ottenere queste autorizzazioni con altri ruoli predefiniti o ruoli personalizzati.
Per informazioni sulla concessione dei ruoli ai bucket, consulta Utilizzare IAM con i bucket.
Caricare un oggetto in un bucket
Per caricare un oggetto in un bucket:
Console
- Nella console Google Cloud, vai alla pagina Bucket in 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 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 di Cloud Storage non riuscite nella console Google Cloud, consulta la sezione 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'operazione ha esito positivo, la risposta è simile al seguente esempio:
Completed files 1/1 | 164.3kiB/164.3kiB
Puoi impostare metadati degli oggetti con chiave fissa e personalizzati durante il caricamento degli oggetti utilizzando i flag di comando.
Librerie client
C++
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
C#
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Go
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Java
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio carica un singolo oggetto:
L'esempio seguente carica più oggetti contemporaneamente:
Il seguente esempio carica contemporaneamente tutti gli oggetti con un prefisso comune:
Node.js
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio carica un singolo oggetto:
Il seguente esempio carica più oggetti contemporaneamente:
Il seguente esempio carica contemporaneamente tutti gli oggetti con un prefisso comune:
PHP
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Python
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Il seguente esempio carica un singolo oggetto:
L'esempio seguente carica più oggetti contemporaneamente:
Il seguente esempio carica contemporaneamente tutti gli oggetti con un prefisso comune:
Ruby
Per saperne di più, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per autenticarti a Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, consulta Configurare l'autenticazione per le librerie client.
Terraform
Puoi utilizzare una risorsa Terraform per caricare un oggetto.
È necessario specificare content
o source
.
API REST
API JSON
L'API JSON distingue tra caricamenti di contenuti multimediali, in cui nella richiesta sono inclusi solo i dati dell'oggetto, e caricamenti suddivisi in più parti dell'API JSON, in cui nella richiesta sono inclusi sia i dati dell'oggetto sia i metadati dell'oggetto.
Caricamento di contenuti multimediali (un caricamento con una singola richiesta senza metadati dell'oggetto)
Avere installato e inizializzatogcloud CLI, che consente di generare un token di accesso per l'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 contenuto 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
, codificato come URL comepets%2Fdog.png
.
Caricamento multiparte dell'API JSON (un caricamento con una singola richiesta che include i metadati dell'oggetto)
Avere installato e inizializzatogcloud CLI, che consente di generare un token di accesso per l'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 che definisci per identificare le diverse parti del file suddiviso in più parti. Ad esempio,separator_string
.OBJECT_METADATA
sono i metadati da includere per il file in formato JSON. Come minimo, questa sezione deve includere un attributoname
per l'oggetto, ad esempio{"name": "myObject"}
.OBJECT_CONTENT_TYPE
è il tipo di contenuto dell'oggetto. Ad esempio:text/plain
.OBJECT_DATA
sono 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 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 del file suddiviso in più parti che hai creato nel passaggio 2. Ad esempio,Desktop/my-upload.multipart
.BOUNDARY_STRING
è la stringa di confine che hai definito nel passaggio 2. Ad esempio,my-boundary
.MULTIPART_FILE_SIZE
è la dimensione totale, in byte, del file suddiviso in più parti 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 riesce, il server restituisce il codice di stato HTTP 200 OK
insieme ai metadati del file.
API XML
Avere installato e inizializzatogcloud CLI, che consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML con una richiesta diPUT
Object: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 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
, codificato come URL comepets%2Fdog.png
.
Puoi impostare metadati aggiuntivi degli oggetti durante il caricamento degli oggetti nelle intestazioni della richiesta nello stesso modo in cui vengono impostati nell'esempio precedenteContent-Type
. Quando utilizzi l'API XML, i metadati possono essere impostati solo al momento della scrittura dell'oggetto, ad esempio durante il caricamento, la copia o la sostituzione dell'oggetto. Per ulteriori informazioni, consulta la sezione Modificare i metadati degli oggetti.
Passaggi successivi
- Scopri di più sui requisiti di denominazione degli oggetti.
- Scopri come utilizzare le cartelle per organizzare gli oggetti.
- Trasferisci gli oggetti dall'istanza Compute Engine.
- Trasferisci dati da provider cloud o altre origini online, come gli 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 gratuitamente