arrow_back

Introduction to APIs in Google

Partecipa Accedi

Introduction to APIs in Google

1 ora 1 credito

GSP294

Laboratori autogestiti Google Cloud

Panoramica

Un'API (interfaccia di programmazione di un'applicazione) è un programma software che permette agli sviluppatori di accedere a risorse di elaborazione e dati. Società di diversi settori rendono le loro API disponibili pubblicamente per consentire agli sviluppatori di integrare strumenti, librerie o servizi specializzati nei propri codebase e applicazioni.

In questo lab scoprirai l'architettura e le funzionalità di base delle API. Potrai anche provare in prima persona a configurare ed eseguire metodi dell'API Cloud Storage in Google Cloud Shell. Una volta completato questo lab comprenderai i principi fondamentali della comunicazione, dell'architettura e dell'autenticazione delle API. Grazie alle prove pratiche avrai anche modo di fare esperienza con le API, che potrai applicare ad altri lab e progetti in futuro.

Obiettivi

Gli argomenti trattati in questo lab sono:

  • API di Google
  • Architettura delle API
  • Protocolli e metodi HTTP
  • Endpoint
  • API REST (Representational State Transfer) e RESTful
  • JSON (JavaScript Object Notation)
  • Servizi di autenticazione delle API

Prerequisiti

Questo è un lab di livello preliminare. È adatto per chi ha conoscenze scarse o nulle delle API ed esperienza scarsa o nulla nell'utilizzo delle API di Google. Suggeriamo, ma non è obbligatoria, esperienza con gli ambienti shell e gli strumenti di interfaccia a riga di comando. È consigliabile avere familiarità con Google Cloud Console e Cloud Storage. Quindi, prima di iniziare, ti consigliamo di seguire almeno questi lab:

Quando vuoi iniziare, scorri verso il basso e segui i passaggi indicati di seguito per configurare il tuo ambiente lab.

Configurazione e requisiti

Prima di fare clic sul pulsante Avvia lab

Leggi le seguenti istruzioni. I lab sono a tempo e non possono essere messi in pausa. Il timer si avvia quando fai clic su Avvia lab e ti mostra per quanto tempo avrai a disposizione le risorse Google Cloud.

Con questo lab pratico Qwiklabs avrai la possibilità di completare le attività in prima persona, in un ambiente cloud reale e non di simulazione o demo. Riceverai delle nuove credenziali temporanee che potrai utilizzare per accedere a Google Cloud per la durata del lab.

Per completare il lab, avrai bisogno di:

  • Accesso a un browser Internet standard (Chrome è il browser consigliato).
  • Nota: utilizza una finestra di navigazione in incognito o privata per eseguire questo lab. Ciò previene qualsiasi conflitto tra il tuo account personale e l'account Studente, che potrebbe causare costi aggiuntivi sostenuti per il tuo account personale.

  • Tempo a disposizione per completare il lab.
  • Nota: se disponi già del tuo account o progetto Google Cloud personale, non utilizzarlo per questo lab per evitare costi aggiuntivi sul tuo account.

Come avviare il lab e accedere alla console Google Cloud

  1. Fai clic sul pulsante Avvia lab. Se devi effettuare il pagamento per il lab, si apre una finestra popup per permetterti di selezionare il metodo di pagamento. A sinistra, trovi il riquadro Dettagli lab con le seguenti informazioni:

    • Pulsante Apri console Google
    • Tempo rimanente
    • Credenziali temporanee da utilizzare per il lab
    • Altre informazioni per seguire questo lab, se necessario
  2. Fai clic su Apri console Google. Il lab avvia le risorse e apre un'altra scheda con la pagina di accesso.

    Suggerimento: disponi le schede in finestre separate posizionate fianco a fianco.

    Note: se visualizzi la finestra di dialogo Scegli un account, fai clic su Utilizza un altro account.
  3. Se necessario, copia il Nome utente dal riquadro Dettagli lab e incollalo nella finestra di dialogo di accesso. Fai clic su Avanti.

  4. Copia la Password dal riquadro Dettagli lab e incollala nella finestra di dialogo di benvenuto. Fai clic su Avanti.

    Importante: devi utilizzare le credenziali presenti nel riquadro di sinistra. Non utilizzare le tue credenziali Google Cloud Skills Boost. Nota: utilizzare il tuo account Google Cloud per questo lab potrebbe comportare addebiti aggiuntivi.
  5. Fai clic nelle pagine successive:

    • Accetta i termini e le condizioni.
    • Non inserire opzioni di recupero o l'autenticazione a due fattori, perché si tratta di un account temporaneo.
    • Non registrarti per le prove gratuite.

Dopo qualche istante, la console Google Cloud si apre in questa scheda.

Nota: puoi visualizzare il menu con un elenco di prodotti e servizi Google Cloud facendo clic sul menu di navigazione in alto a sinistra. Icona menu di navigazione

API: cosa sono e a cosa servono

Come già detto, un'API (interfaccia di programmazione di un'applicazione) è un programma software che permette agli sviluppatori di accedere a risorse di elaborazione e dati. Le API seguono regole e metodi specifici per comunicare con chiarezza richieste e risposte.

La possibilità di accedere a dati e risorse di elaborazione aumenta notevolmente l'efficienza degli sviluppatori. Usare un'API è molto più facile che creare da zero ciascun programma, metodo o set di dati. Le API si fondano sul principio dell'astrazione: non è necessario capirne i meccanismi o le complessità interne per usarle nel proprio ambiente.

Le API sono progettate per gli sviluppatori e spesso non dispongono di una Graphic User Interface (GUI). Tuttavia, ci sono delle eccezioni. Google ha rilasciato un nuovo strumento chiamato Explorer API, che permette di esplorare diverse API di Google in modo interattivo (per saperne di più, dai un'occhiata al lab APIs Explorer: Qwik Start).

API Cloud

Google offre API utilizzabili in diversi campi e settori. Le API vengono spesso impiegate per ambiti quali sviluppo web, machine learning, data science e flussi di lavoro dell'amministrazione dei sistemi. Ma questi sono solo alcuni esempi di casi d'uso. Esplorando ad esempio AnyAPI, ti renderai conto di quante API sono disponibili.

Quando Qwiklabs esegue il provisioning di un nuovo progetto Google Cloud per l'istanza di un lab, abilita la maggior parte delle API "dietro le quinte", per consentirti di svolgere subito le attività del lab. Se crei progetti all'esterno di Qwiklabs, sarai tu a dover abilitare determinate API.

Familiarizzando con l'uso di Google Cloud, inizierai a usare più API nel tuo flusso di lavoro. Gli utenti esperti integrano e utilizzano le API Cloud nei loro ambienti in modo quasi esclusivo e raramente ricorrono a Cloud Console per eseguire strumenti e servizi. Sono disponibili decine di lab per sperimentare varie API di Google in diverse lingue. Eccone due esempi:

Ora esplorerai la libreria API per scoprire le API di Google disponibili.

Libreria API

Apri il menu di navigazione e seleziona API e servizi > Libreria:

aaa6309ec4a35ccd.png

La libreria API offre accesso rapido, documentazione e opzioni di configurazione per oltre 200 API di Google. Anche se si trova all'interno della console, è importante notare che la libreria ti consente di accedere a tutte le API di Google, non solo a quelle di Google Cloud. Questo evidenzia un concetto importante: le API sono fondamentali per tutti i servizi Google e non tutte le API Cloud fanno parte della categoria Google Cloud.

Adesso proverai ad attivare un'API nella libreria API. Immagina di essere uno sviluppatore di applicazioni per dispositivi mobili e di voler creare un'applicazione per un sito di fitness. Per farlo utilizzerai l'API Google Fitness.

Nella barra di ricerca "Cerca API e servizi", digita API Fitness e premi Invio. Fai clic sull'API Fitness dall'elenco dei risultati. Quindi, fai clic su Abilita. Se torni all'API Fitness nella libreria API facendo clic due volte sul pulsante Indietro nella finestra del browser, vedrai che adesso l'API è abilitata:

fitness-api.png

Nella libreria API trovi link a tutorial, documentazione, termini di servizio e metodi interattivi disponibili in Explorer API. Per visualizzare informazioni sulle metriche e sull'utilizzo, utilizzerai la dashboard API.

Dashboard API

Controlla l'API Fitness nella dashboard API di Cloud Console. Apri il menu di navigazione e seleziona API e servizi > Dashboard:

api-dashboard.gif

La dashboard API riporta i dettagli relativi alle API utilizzate nel tuo progetto, compresi i livelli di traffico, i tassi di errore e persino le latenze. Questo ti aiuterà a individuare rapidamente i problemi delle applicazioni che utilizzano i servizi Google.

Dall'elenco delle API, seleziona API Fitness:

fit-api.png

Potrebbe essere necessario cercare Fitness API nella seconda pagina se non si trova nella prima pagina.

In questa pagina puoi visualizzare e richiedere quote, controllare l'accesso alle risorse e ai dati e visualizzare le metriche. Per vedere in azione una di queste funzionalità, seleziona Quote dal menu a sinistra.

Espandi l'opzione Richieste. Qui puoi visualizzare quante query ammette questa API per utente, al giorno e al secondo:

api-quota.png

Adesso che hai un po' di esperienza con il provisioning di un'API non Cloud, le altre prove pratiche riguarderanno l'API Google Cloud Storage. Ora scoprirai l'architettura e le funzionalità di base delle API.

Verificare le conoscenze

Rispondi alle seguenti domande a scelta multipla per consolidare quanto hai imparato finora.

Architettura delle API

Le API sono un insieme di metodi che consentono ai programmi di comunicare tra loro. Per comunicare efficacemente, i programmi devono seguire un protocollo chiaro che regoli il trasferimento e l'interpretazione dei dati.

Modello client-server

Internet è il canale di comunicazione standard che le API usano per trasmettere richieste e risposte tra programmi. Un modello client-server è l'architettura sottostante che le API basate sul Web usano per scambiare informazioni.

Un client è un dispositivo di elaborazione (ad es. uno smartphone o un laptop) che invia una richiesta per ottenere una risorsa di elaborazione o dati. La richiesta del client deve essere formattata secondo il protocollo concordato.

Un server ospita dati e/o risorse di elaborazione. Il suo compito è quello di interpretare ed eseguire le richieste del client.

Qui sotto è riportata una rappresentazione visiva del modello client-server:

5fe668c7107b4d28.png

Protocollo HTTP e metodi di richiesta

Dato che le API usano il Web come canale di comunicazione, molte seguono il protocollo HTTP, che definisce regole e metodi per lo scambio di dati tra client e server tramite Internet. Il protocollo HTTP non viene usato solo dalle API, ma è anche lo standard della comunicazione Web per l'invio e la ricezione di dati su Internet.

Le API che utilizzano il protocollo HTTP utilizzano i metodi di richiesta HTTP (noti anche come "verbi HTTP") per trasmettere le richieste dei client ai server. I metodi di richiesta HTTP più comuni sono GET, POST, PUT e DELETE.

Il metodo di richiesta GET viene usato da un client per ottenere dati da un server. Quando sul server viene trovata la risorsa richiesta, questa viene inviata al client.

Il metodo PUT sostituisce dati esistenti oppure crea dati se non esistono. Usare PUT più volte non produce effetti, perché il server ospiterà solo una copia del set di dati.

Il metodo POST viene usato principalmente per creare nuove risorse. Usare POST più volte aggiungerà dati in più posizioni sul server. È consigliabile usare PUT per aggiornare le risorse e POST per crearne di nuove.

Il metodo DELETE rimuove dati o risorse specificati dal client su un server.

Anche se ci sono centinaia di API, ciascuna con i suoi scopi e specializzazioni specifici, è importante capire che in sostanza usano tutte lo stesso protocollo e gli stessi metodi sottostanti per la comunicazione client-server.

Verificare le conoscenze

Rispondi alle seguenti domande a scelta multipla per consolidare quanto hai imparato finora.

Endpoint

Le API usano i metodi HTTP per interagire con dati o servizi di elaborazione ospitati su un server. Questi metodi risultano inutili se non è disponibile un modo coerente per accedere a risorse specifiche. Le API sfruttano canali di comunicazione detti endpoint per consentire ai client di accedere alle risorse di cui hanno bisogno senza complicazioni o irregolarità.

Gli endpoint sono punti di accesso a dati o risorse di elaborazione ospitati su un server e assumono la forma di URI HTTP. Gli endpoint vengono aggiunti all'URL base di un'API (ad es. http://example.com) per creare un percorso a una risorsa specifica o a un contenitore di risorse specifico. Ecco alcuni esempi di endpoint:

  • http://example.com/storelocations
  • http://example.com/accounts
  • http://example.com/employees

Anche quelli a seguire sono endpoint validi:

  • http://example.com/storelocations/sanfrancisco
  • http://example.com/storelocations/newdelhi
  • http://example.com/storelocations/london

Puoi aggiungere stringhe di query agli endpoint (ad es. http://example.com/endpoint/?id=1) per inserire variabili che potrebbero essere necessarie per completare la richiesta di un'API. Gli endpoint sono definiti come i "sostantivi" su cui agiscono i verbi (ovvero i metodi HTTP). Le API usano questo framework per rispondere alle richieste.

Più precisamente, un client invia una richiesta composta da un metodo HTTP (verbo) e da un endpoint (sostantivo) per ricevere dati specifici o eseguire un'azione particolare sul server. È importante capire che il server è l'elemento che risponde alla richiesta del client traducendola ed eseguendo un'operazione specifica basata sul metodo e sull'endpoint forniti.

Dato che le attività più importanti vengono eseguite nel backend, si può dire che un'API che utilizza metodi ed endpoint HTTP risiede sul server, agendo come un "implementatore" delle richieste del client. Questo modello definisce a grandi linee le API RESTful, che verranno analizzate più dettagliatamente nella prossima sezione. Se vuoi esercitarti nella creazione di endpoint per un'API, segui il lab Cloud Endpoints: Qwik Start.

API RESTful

Le API che utilizzano il protocollo, i metodi di richiesta e gli endpoint HTTP vengono dette API RESTful. REST (Representational State Transfer) è un tipo di architettura che definisce standard per la comunicazione basata sul Web. Google definisce così un sistema RESTful:

… le risorse vengono archiviate in un datastore. Un client invia una richiesta in modo che il server esegua una determinata azione (ad esempio la creazione, il recupero, l'aggiornamento o l'eliminazione di una risorsa) e il server esegue l'azione e invia una risposta, spesso sotto forma di rappresentazione della risorsa specificata.

Questa struttura orientata alle risorse è un principio fondamentale del formato REST. Le API RESTful sono modellate come:

… raccolte di risorse con indirizzi singoli… Le risorse e i metodi vengono chiamati rispettivamente sostantivi e verbi delle API. Nel protocollo HTTP, i nomi delle risorse (sostantivi) corrispondono agli URL, mentre i metodi (verbi) ai metodi HTTP…

Questi termini dovrebbero esserti familiari, perché nella sessione precedente hai esaminato questi componenti di base. REST è il framework maggiormente adottato per le API. Nel 2010, circa il 74% delle API pubbliche erano API REST HTTP.

Oltre alle stringhe di query, le API RESTful possono usare anche i campi seguenti nelle loro richieste:

  • Intestazioni: parametri che descrivono in dettaglio la richiesta HTTP stessa.
  • Corpo: i dati che un client vuole inviare a un server.

Il corpo viene scritto nel formato dei dati JSON oppure XML.

Formati dei dati delle API (JSON)

Le API RESTful utilizzano XML o JSON (JavaScript Object Notation) come formato file per i dati presenti nel corpo di un metodo di richiesta HTTP.

JSON ha superato l'uso di XML nelle API RESTful, principalmente perché è più leggero, più semplice da leggere e più veloce da analizzare. Ora ti presenteremo brevemente la sintassi e la struttura di JSON. Per informazioni più complete, consulta la documentazione sulla sintassi di JSON di W3C.

JSON supporta i seguenti tipi di dati:

  • Numeri: tutti i tipi di numeri, senza distinzioni fra numeri interi e rappresentazioni in virgola mobile.
  • Stringhe: testo inserito tra virgolette.
  • Valori booleani: valori veri o falsi.
  • Array: un elenco di elementi raggruppati per tipo simile.
  • Null: un valore "vuoto".

I dati JSON sono composti da coppie chiave-valore. Si tratta di dati collegati composti da un identificatore unico (una chiave) e dai relativi dati di riferimento (valori), La chiave deve essere di tipo stringa e il valore può essere qualsiasi tipo di dato tra quelli sopra elencati.

Di seguito è riportato un esempio di coppia chiave-valore semplice in JSON:

"Key1" : "Value 1"

Ecco altri esempi:

"Key2" : 64
"Key3" : True
"Key4" : ["this", "is", "an", "array"]

Un oggetto JSON utilizza parentesi graffe { } per raggruppare dati organizzati in coppie chiave-valore. Quello qui sotto è invece un esempio di oggetto che contiene tre coppie chiave-valore:

{
	"Name": "Julie",
	"City": "Los Angeles, CA",
	"Age": 28
}

Le virgole separano le coppie chiave-valore archiviate in un oggetto.

Strumento di convalida JSON

I file JSON possono contenere un numero illimitato di coppie chiave-valore e/o oggetti. Quando si sviluppa a livello professionale, non è raro trovare file lunghi centinaia (se non migliaia) di righe. In qualità di sviluppatore, sai bene che basta un piccolo errore nella formattazione o nella sintassi per corrompere l'intero codebase.

Gli strumenti di convalida JSON come jsonlint o, se usi Chrome come browser principale, l'estensione JSONView identificano rapidamente gli errori di sintassi e di formattazione nel codice JSON, indicando dei modi per risolverli.

Ecco degli esercizi pratici con uno strumento di convalida JSON. Apri lo strumento di convalida jsonlint in una nuova scheda.

Incolla il seguente blocco di codice nello strumento di convalida:

{
	"Name": "Julie",
	"Hometown": "Los Angeles, CA",
	"Age": 28
}

Quindi, fai clic su Validate JSON (Convalida JSON). Nella sezione dei risultati dovrebbe comparire un riquadro verde che riporta il messaggio Valid JSON (JSON valido).

Ora incolla il seguente blocco di codice nello strumento di convalida:

{
	"Name": "Julie"
	   "Hometown": "Los Angeles, CA",
	"Age": 28
}

Fai clic su Validate JSON (Convalida JSON).

Vedrai che manca una virgola e il rientro non viene mantenuto. Il rientro viene corretto e lo strumento di convalida evidenzia quali errori erano presenti:

json-error.png

Lo strumento di convalida rileva la mancanza di un identificatore (una virgola) dopo la seconda riga, che è quanto era stato anticipato. Aggiungendo una virgola dopo la seconda riga e facendo clic su Validate JSON (Convalida JSON), ora dovresti visualizzare il seguente output:

valid-json.png

Man mano che segui lab in cui usi API e JSON, uno strumento di convalida JSON come questo può risparmiarti molti problemi, tempo e sforzi per cercare di eseguire il debug degli errori di sintassi.

Verificare le conoscenze

Rispondi alle seguenti domande a scelta multipla per consolidare quanto hai imparato finora.

Creazione di un file JSON in Cloud Console

Metterai in pratica ciò che hai imparato eseguendo chiamate API REST/JSON Cloud Storage in Cloud Shell per creare bucket e caricare contenuti.

Apri questo link in una nuova scheda per assicurarti che l'API Google Cloud Storage sia attiva. Dovresti visualizzare quanto segue:

JSON_API.png

Adesso apri una sessione di Cloud Shell. Esegui questo comando per creare e modificare un file denominato values.json:

nano values.json

Nell'editor di testo nano, copia e incolla il seguente blocco di codice, sostituendo <YOUR_BUCKET_NAME> con un nome bucket unico:

{  "name": "<YOUR_BUCKET_NAME>",
   "location": "us",
   "storageClass": "multi_regional"
}

Dopo aver eseguito questa operazione, esci dall'editor di testo nano premendo Ctrl+XYInvio.

Hai appena creato un file JSON che contiene un oggetto con tre coppie chiave-valore: name, location e storageClass. Questi sono gli stessi valori necessari quando crei un bucket con lo strumento a riga di comando gsutil oppure nella console.

Prima di poter creare un bucket nell'API REST/JSON Cloud Storage, dovrai disporre dei criteri di autenticazione e autorizzazione necessari.

Autenticazione e autorizzazione

L'ultimo argomento da affrontare è lo schema di autenticazione e autorizzazione delle API.

  • Il termine autenticazione fa riferimento al processo di determinazione dell'identità del client.
  • Con autorizzazione si intende il processo di determinazione delle autorizzazioni di cui dispone un client autenticato per un insieme di risorse.

Il processo di autenticazione identifica chi sei, mentre quello di autorizzazione determina cosa puoi fare.

Le API di Google utilizzano tre tipi di servizi di autenticazione/autorizzazione: "chiavi API", "account di servizio" e "OAuth". Un'API utilizza uno di questi servizi di autenticazione a seconda delle risorse necessarie e da dove l'API viene richiamata.

Chiavi API

Le chiavi API sono dei token segreti, solitamente sotto forma di stringhe criptate. Le chiavi API sono facili da creare e usare. Le API che utilizzano dati o metodi pubblici e che vogliono consentire agli sviluppatori di essere immediatamente operativi spesso usano chiavi API per autenticare gli utenti.

Nell'ambito di Google Cloud, le chiavi API identificano il progetto chiamante che esegue la chiamata a un'API. Identificando il progetto chiamante, le chiavi API consentono di associare le informazioni sull'utilizzo a quel progetto. Possono anche rifiutare le chiamate provenienti da progetti a cui non è stato autorizzato l'accesso o non sono stati abilitati dall'API.

OAuth

I token OAuth sono simili alle chiavi API dal punto di vista del formato, ma sono più sicuri e possono essere collegati ad account utente o identità. Vengono usati principalmente quando le API offrono a uno sviluppatore i mezzi per accedere ai dati utente.

Mentre le chiavi API concedono agli sviluppatori l'accesso a tutte le funzionalità di un'API, tutti gli ID client OAuth si basano sull'ambito: a identità diverse verranno assegnati privilegi diversi.

Account di servizio

Un account di servizio è un tipo speciale di Account Google che appartiene all'applicazione o a una macchina virtuale (VM) invece che a un singolo utente finale. L'applicazione assume l'identità dell'account di servizio per chiamare le API di Google. In questo modo gli utenti non vengono coinvolti direttamente.

Puoi utilizzare un account di servizio fornendo la relativa chiave privata all'applicazione oppure usando gli account di servizio integrati disponibili durante l'esecuzione su Google Cloud Functions, Google App Engine, Google Compute Engine o Google Kubernetes Engine.

Se ti interessa un lab specifico sugli account di servizio e i ruoli, vedi: Service Accounts and Roles: Fundamentals.

Autenticare e autorizzare l'API JSON/REST Cloud Storage

Poiché Cloud Storage è una piattaforma che ospita dati utente e vi fornisce l'accesso, dovrai creare un token OAuth prima di usare i suoi servizi.

Apri OAuth 2.0 Playground in una nuova scheda. Si tratta di un servizio che consente di creare facilmente token OAuth.

Scorri e seleziona Cloud Storage API V1. Quindi, seleziona l'ambito https://www.googleapis.com/auth/devstorage.full_control:

storage_full_control_api.png

Fai clic sulla casella blu che riporta Authorize APIs (Autorizza API). Si aprirà la pagina Accedi con Google. Seleziona il tuo nome utente Qwiklabs, quindi fai clic su Allow (Consenti) quando viene richiesta l'autorizzazione.

Al Passaggio 2 viene creato un codice di autorizzazione. Fai clic su Exchange authorization code for tokens (Scambia codice di autorizzazione per i token). Se la procedura continua al Passaggio 3, fai clic sul riquadro del Passaggio 2. La pagina che visualizzi dovrebbe essere simile alla seguente:

beeb2e2e2585e202.png

Copia il token di accesso, lo userai nel prossimo passaggio.

Creare un bucket con l'API JSON/REST Cloud Storage

Torna alla sessione di Cloud Shell. Nel prompt dell'interfaccia a riga di comando, digita ls e premi Invio. Dovresti visualizzare il file values.json che hai creato in precedenza e un file README-cloudshell.txt:

Produzione:

README-cloudshell.txt    values.json

Esegui questo comando per impostare il token OAuth2 come variabile di ambiente, sostituendo <YOUR_TOKEN> con il token di accesso che hai creato:

export OAUTH2_TOKEN=<YOUR_TOKEN>

Esegui il comando seguente per impostare l'ID progetto come variabile di ambiente, sostituendo <YOUR_PROJECT_ID> con l'ID progetto di Qwiklabs:

export PROJECT_ID=<YOUR_PROJECT_ID>

Ora esegui questo comando per creare un bucket di Cloud Storage:

curl -X POST --data-binary @values.json \
    -H "Authorization: Bearer $OAUTH2_TOKEN" \
    -H "Content-Type: application/json" \
    "https://www.googleapis.com/storage/v1/b?project=$PROJECT_ID"

Dovrebbe essere restituito questo output:

{
  "kind": "storage#bucket",
  "selfLink": "https://www.googleapis.com/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7",
  "id": "qwiklabs-gcp-02-5d551758b5a7",
  "name": "qwiklabs-gcp-02-5d551758b5a7",
  "projectNumber": "670840659006",
  "metageneration": "1",
  "location": "US",
  "storageClass": "MULTI_REGIONAL",
  "etag": "CAE=",
  "timeCreated": "2020-11-11T06:41:40.901Z",
  "updated": "2020-11-11T06:41:40.901Z",
  "iamConfiguration": {
    "bucketPolicyOnly": {
      "enabled": false
    },
    "uniformBucketLevelAccess": {
      "enabled": false
    }
  },
  "locationType": "multi-region"
}

Questa richiesta rappresenta il culmine di quanto hai imparato finora. Hai utilizzato lo strumento di interfaccia a riga di comando curl per creare una richiesta di metodo POST HTTP. Hai inserito il file values.json nel corpo della richiesta. Hai inserito il token OAuth e una specifica JSON come intestazioni della richiesta. Questa richiesta è stata instradata all'endpoint di Cloud Storage, che contiene un parametro di stringa di query impostato per l'ID progetto Google Cloud.

Visualizzare il bucket di Cloud Storage appena creato

Per visualizzare il bucket che hai appena creato, nel menu di navigazione seleziona Storage > Browser:

786bb3559131e3c1.png

Verificare l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai creato correttamente un bucket con l'API JSON/REST Cloud Storage, visualizzerai un punteggio di valutazione.

Creare un bucket con l'API JSON/REST Cloud Storage

Caricare un file usando l'API JSON/REST

Puoi usare l'API JSON/REST Cloud Storage per caricare i file nei bucket.

Salva l'immagine qui sotto sul tuo computer e assegnale il nome demo-image.png:

a00af7664effa025.png

Nella sessione di Cloud Shell, fai clic sull'icona del menu con tre puntini nell'angolo in alto a destra, quindi fai clic su Upload file (Carica file). Seleziona demo-image.png. In questo modo l'immagine verrà aggiunta alla directory.

Esegui questo comando per visualizzare il percorso del file immagine:

realpath demo-image.png

Dovrebbe essere restituito questo output:

/home/gcpstaging25084_student/demo-image.png

Imposta un percorso file come variabile di ambiente tramite il comando seguente, sostituendo <DEMO_IMAGE_PATH> con l'output del comando precedente:

export OBJECT=<DEMO_IMAGE_PATH>

Imposta il nome del bucket come variabile di ambiente tramite il comando seguente, sostituendo <YOUR_BUCKET> con il nome del tuo bucket:

export BUCKET_NAME=<YOUR_BUCKET>

Ora esegui il comando seguente per caricare l'immagine demo nel bucket di Cloud Storage:

curl -X POST --data-binary @$OBJECT \
    -H "Authorization: Bearer $OAUTH2_TOKEN" \
    -H "Content-Type: image/png" \
    "https://www.googleapis.com/upload/storage/v1/b/$BUCKET_NAME/o?uploadType=media&name=demo-image"

Dovrebbe essere restituito questo output:

{
  "kind": "storage#object",
  "id": "qwiklabs-gcp-02-5d551758b5a7/demo-image/1605077118178936",
  "selfLink": "https://www.googleapis.com/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7/o/demo-image",
  "mediaLink": "https://www.googleapis.com/download/storage/v1/b/qwiklabs-gcp-02-5d551758b5a7/o/demo-image?generation=1605077118178936&alt=media",
  "name": "demo-image",
  "bucket": "qwiklabs-gcp-02-5d551758b5a7",
  "generation": "1605077118178936",
  "metageneration": "1",
  "contentType": "image/png",
  "storageClass": "MULTI_REGIONAL",
  "size": "401951",
  "md5Hash": "LbpHpwhnApQKQx9IEXjTsQ==",
  "crc32c": "j5oPrg==",
  "etag": "CPis3Zvy+ewCEAE=",
  "timeCreated": "2020-11-11T06:45:18.178Z",
  "updated": "2020-11-11T06:45:18.178Z",
  "timeStorageClassUpdated": "2020-11-11T06:45:18.178Z"
}

Per visualizzare l'immagine aggiunta al bucket, apri il menu di navigazione e seleziona Storage > Browser. Quindi, fai clic sul nome del bucket. Dovresti vedere che è stato aggiunto il file demo-image:

9d8946af3d651c6b.png

Facendo clic sull'immagine si aprirà la pagina dei Dettagli dell'oggetto.

Verificare l'attività completata

Fai clic su Controlla i miei progressi per verificare l'attività eseguita. Se hai caricato correttamente un file con l'API JSON/REST Cloud Storage, visualizzerai un punteggio di valutazione.

Caricare un file con l'API JSON/REST Cloud Storage

Complimenti!

In questo lab hai acquisito una solida comprensione delle API e hai provato in prima persona l'API JSON/REST Cloud Storage. Hai scoperto cosa sono le API Cloud, l'architettura delle API, il protocollo e i metodi HTTP, gli endpoint, le API RESTful, il formato JSON e i metodi di autenticazione delle API. Ora hai tutti gli strumenti per partecipare ad altri lab di Qwiklabs sulle API.

Terminare il lab

Il lab pratico è terminato. Fai clic sul pulsante Termina lab nella parte superiore della pagina.

end_lab.gif

Vota i lab di Qwiklabs che segui. Se ti è piaciuto, votalo: dd499d096220243f.png

Lascia un commento sulla tua esperienza nella finestra "Commenti". Google apprezza sempre i feedback costruttivi.

Se termini un lab, non avrai più accesso al relativo progetto, così come ai servizi e alle attività che hai svolto al suo interno. Se torni a Cloud Console, noterai che la disconnessione è stata eseguita automaticamente. Ora puoi chiudere la scheda.

assistant-quest-badge.png ml-badge.png gsuite-badge.png c-badge.png API_Ex_badge.png

Completare la Quest

Questo self-paced lab fa parte delle seguenti Quest di Qwiklabs: OK Google: Build Interactive Apps with Google Assistant, Machine Learning APIs, G Suite: Integrations, Developing Data and Machine Learning Apps with C# ed Exploring APIs.

Una Quest è composta da una serie di lab collegati tra loro che formano un percorso di apprendimento. Il completamento di questa Quest ti permette di ottenere il badge qui sopra come riconoscimento dell'obiettivo raggiunto. Puoi rendere pubblici i tuoi badge inserendone i link nel tuo CV online o nel tuo account di social media. Iscriviti a una Quest e riceverai subito un riconoscimento se hai completato questo lab. Scopri le altre Quest di Qwiklabs disponibili.

Passaggi successivi/Ulteriori informazioni

Non perderti questi lab per esercitarti ancora con le API:

Formazione e certificazione Google Cloud

… per utilizzare al meglio le tecnologie Google Cloud. I nostri corsi ti consentono di sviluppare competenze tecniche e best practice per aiutarti a metterti subito al passo e avanzare nel tuo percorso di apprendimento. Offriamo vari livelli di formazione, dal livello base a quello avanzato, con opzioni di corsi on demand, dal vivo e virtuali, in modo da poter scegliere il più adatto in base ai tuoi impegni. Le certificazioni ti permettono di confermare e dimostrare le tue abilità e competenze relative alle tecnologie Google Cloud.

Ultimo aggiornamento del manuale: 20 novembre 2020
Ultimo test del lab: 20 novembre 2020

Copyright 2020 Google LLC Tutti i diritti riservati. Google e il logo Google sono marchi di Google LLC. Tutti gli altri nomi di società e prodotti sono marchi delle rispettive società a cui sono associati.