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, 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
) sul bucket. Questo ruolo predefinito contiene le autorizzazioni necessarie per caricare un oggetto in un bucket. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione
Autorizzazioni obbligatorie:
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à descritte in questa pagina.
storage.objects.list
- Questa autorizzazione è necessaria solo se prevedi di utilizzare Google Cloud CLI per eseguire le attività descritte in questa pagina. Questa autorizzazione è necessaria anche se vuoi utilizzare la console Trusted Cloud per verificare gli oggetti che hai caricato.
Se prevedi di utilizzare la console Trusted Cloud per eseguire le attività descritte in questa pagina, devi disporre 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 archiviazione (roles/storage.admin
) nel progetto.
Puoi anche ottenere queste autorizzazioni con altri ruoli predefiniti o ruoli personalizzati.
Per informazioni sulla concessione dei ruoli sui bucket, consulta Utilizzare IAM con i bucket.
Caricare un oggetto in un bucket
Per caricare un oggetto in un bucket:
Console
- Nella console Trusted 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 file manager nel riquadro principale della console Trusted Cloud .
Fai clic su Carica > Carica file, seleziona i file da caricare nella finestra di dialogo che viene visualizzata, poi fai clic su Apri.
Per scoprire come ottenere informazioni dettagliate sugli errori relativi alle operazioni di Cloud Storage non riuscite nella console Trusted 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'operazione ha esito positivo, la risposta è simile al seguente esempio:
Completed files 1/1 | 164.3kiB/164.3kiB
Puoi impostare metadati dell'oggetto personalizzati e con chiave fissa nell'ambito del caricamento dell'oggetto utilizzando i flag di comando.
Librerie client
C++
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C++.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
C#
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage C#.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
Go
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Go.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
Java
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Java.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
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:
Node.js
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Node.js.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
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 maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage PHP.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
Python
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Python.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
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:
Ruby
Per maggiori informazioni, consulta la documentazione di riferimento dell'API Cloud Storage Ruby.
Per eseguire l'autenticazione in Cloud Storage, configura le Credenziali predefinite dell'applicazione. Per saperne di più, vedi Configurare l'autenticazione per le librerie client.
Prima di eseguire gli esempi di codice, imposta la variabile di ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN
su s3nsapis.fr
.
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 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 a richiesta singola senza metadati dell'oggetto)
Avere gcloud CLI installata e inizializzata, il che ti 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.s3nsapis.fr/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
, codificato come URLpets%2Fdog.png
.
Caricamento multiparte dell'API JSON (un caricamento con una sola richiesta che include i metadati dell'oggetto)
Avere gcloud CLI installata e inizializzata, il che ti consente di generare un token di accesso per l'intestazione
Authorization
.Crea un file
multipart/related
che contenga 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 e che identifica le diverse parti del file multipar Ad esempio,separator_string
.OBJECT_METADATA
sono i metadati che vuoi 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 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.s3nsapis.fr/upload/storage/v1/b/BUCKET_NAME/o?uploadType=multipart"
Dove:
MULTIPART_FILE_LOCATION
è il percorso locale del file in più parti creato al passaggio 2. Ad esempio,Desktop/my-upload.multipart
.BOUNDARY_STRING
è la stringa di delimitazione che hai definito nel passaggio 2. Ad esempio,my-boundary
.MULTIPART_FILE_SIZE
è la dimensione totale, in byte, del file in più parti che hai 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
Avere gcloud CLI installata e inizializzata, il che ti consente di generare un token di accesso per l'intestazione
Authorization
.Utilizza
cURL
per chiamare l'API XML con una richiestaPUT
Object:curl -X PUT --data-binary @OBJECT_LOCATION \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: OBJECT_CONTENT_TYPE" \ "https://storage.s3nsapis.fr/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
, codificato come URLpets%2Fdog.png
.
Puoi impostare metadati dell'oggetto aggiuntivi nell'ambito del caricamento dell'oggetto
nelle intestazioni della richiesta nello stesso modo in cui l'esempio precedente imposta
Content-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
Modifica dei metadati degli oggetti.
Passaggi successivi
- Scopri di più sui requisiti di denominazione per gli oggetti.
- Scopri di più sull'utilizzo delle cartelle per organizzare gli oggetti.
- Trasferisci oggetti dall'istanza Compute Engine.
- Controlla chi ha accesso ai tuoi oggetti e bucket.
- Visualizza i metadati dell'oggetto, incluso l'URL dell'oggetto.