Eseguire una funzione di Azure con una richiesta HTTP

Completato

Una richiesta HTTP è un'operazione comune sulla maggior parte delle piattaforme e dei dispositivi. Indipendentemente se la richiesta riguarda la ricerca di una parola in un dizionario o informazioni sulle previsioni meteo locali, vengono continuamente inviate richieste HTTP. Funzioni di Azure consente di creare rapidamente una parte di logica da eseguire quando viene ricevuta una richiesta HTTP.

In questa unità, si apprenderà come creare e richiamare una funzione di Azure tramite un trigger HTTP. Verranno anche illustrate alcune delle opzioni di personalizzazione disponibili per i trigger HTTP.

Cos'è un trigger HTTP?

Un trigger HTTP è un trigger che esegue una funzione quando viene ricevuta una richiesta HTTP. I trigger HTTP presentano molte funzionalità e personalizzazioni, tra cui:

  • Fornire accesso autorizzato tramite la fornitura di chiavi.
  • Limitare i verbi HTTP supportati.
  • Restituzione dei dati al chiamante.
  • Ricevere i dati tramite i parametri della stringa di query o tramite il corpo della richiesta.
  • Supportare i modelli di route dell'URL per modificare l'URL della funzione.

Quando si crea un trigger HTTP, è necessario specificare un nome per il trigger e scegliere un livello di autorizzazione.

Cos'è un livello di autorizzazione del trigger HTTP?

Un livello di autorizzazione del trigger HTTP è un flag che indica se una richiesta HTTP in ingresso necessita di una chiave API per l'autenticazione.

Esistono tre livelli di autorizzazione:

  1. Funzione
  2. Anonimo
  3. Amministrativi

I livelli Funzione e Admin sono basati sulla "chiave". Per inviare una richiesta HTTP, è necessario fornire una chiave per l'autenticazione. Esistono due tipi di chiavi: funzione e host. La differenza tra i due tipi di chiavi è a livello di ambito. Le chiavi funzione sono specifiche di una funzione. Le chiavi host si applicano a tutte le funzioni nell'intera app per le funzioni. Se il livello di autorizzazione è impostato su Funzione, è possibile usare una chiave funzione o host. Se il livello di autorizzazione è impostato su Admin, è necessario fornire una chiave host.

Importante

Poiché le chiavi host forniscono accesso con privilegi elevati all'app per le funzioni, è necessario trasportarle e archiviarle in modo sicuro.

Il livello Anonimo indica che non è richiesta alcuna autenticazione. In questo esercizio viene usato il livello di autorizzazione Anonimo.

Come creare un trigger HTTP

Proprio come un trigger timer, è possibile creare un trigger HTTP tramite il portale di Azure. All'interno della funzione di Azure selezionare Trigger HTTP nell'elenco dei tipi di trigger predefiniti, quindi immettere la logica da eseguire e apportare eventuali personalizzazioni, ad esempio limitando l'uso di alcuni verbi HTTP.

Un'impostazione importante da comprendere è Richiedi nome parametro. Questa impostazione è una stringa che rappresenta il nome del parametro che contiene le informazioni relative a una richiesta HTTP in ingresso. Per impostazione predefinita, il nome del parametro è req.

Come richiamare un trigger HTTP

Per richiamare un trigger HTTP, inviare una richiesta HTTP all'URL per la funzione. Per ottenere questo URL, passare alla tabella codici per la funzione e selezionare il collegamento Recupera URL della funzione.

Screenshot of the Azure portal showing a Functions App pane with the app's Get function URL button highlighted.

Dopo aver ottenuto l'URL per la funzione, è possibile inviare richieste HTTP. Se la funzione riceve i dati, tenere presente che è possibile usare i parametri della stringa di query o fornire i dati tramite il corpo della richiesta.

Un trigger HTTP viene eseguito quando riceve una richiesta HTTP all'URL della funzione. I trigger HTTP consentono di ricevere dati, eseguire la logica e, facoltativamente, restituire i dati al chiamante.