- Stampa
Come formattare gli output del connettore HTTP
Imparare a strutturare gli output dei connettori HTTP.
Panoramica
L'editor di funzioni connettore di Tulip consente di strutturare i dati restituiti dalle funzioni connettore in modo che siano utili e utilizzabili nelle applicazioni. In questo articolo tratteremo le basi della formattazione delle funzioni connettore Output, presentandovi:
- Il concetto di "Output" di un connettore
- Gli strumenti disponibili per la formattazione degli output
- Vari formati di output comuni
Cosa sono gli output?
Gli output sono utilizzati per definire e strutturare i risultati restituiti dalla funzione connettore. Sono il modo in cui si estraggono le informazioni importanti per le applicazioni da un corpo di ritorno HTTP più ampio.
Come strutturare gli output
La sezione Output si trova in basso a sinistra nell'editor di funzioni del connettore.
Per iniziare ad aggiungere output, fare clic su Aggiungi output di funzione.
È buona norma assegnare alle uscite un nome identificabile. Questi nomi appaiono come variabili nelle applicazioni, quindi è importante poterli distinguere.
Per comprendere i risultati di una richiesta HTTP, è importante innanzitutto capire la forma di un oggetto restituito nei risultati del test. Il diagramma seguente illustra come i risultati siano suddivisi in sezioni di oggetti e array.
:::(Info) (NOTA) Se non si è mai lavorato con JSON, è possibile che non si abbia familiarità con due tipi di dati fondamentali, gli oggetti e gli array. Gli array sono elenchi di valori dello stesso tipo. Ad esempio, [1,2,3,5], oppure [oak, elm, alder, hickory]. I valori negli array sono contenuti tra parentesi quadre, [ ]. Gli oggetti sono un tipo di dato che contiene coppie chiave:valore. Le coppie chiave:valore all'interno di un oggetto possono essere di diversi tipi, compresi gli array e gli oggetti annidati. Gli oggetti sono contenuti da parentesi graffe, { }. :::
Per ulteriori informazioni su oggetti e matrici, consultare la sezione Comprendere le matrici e gli oggetti negli output delle funzioni di Connector.
Notazione a punti
Per i connettori HTTP, gli output utilizzano un formato chiamato Dot Notation. La notazione a punti consente di accedere ai valori all'interno di un oggetto. La notazione a punti è utile per estrarre solo ciò che serve da un corpo di risposta JSON di grandi dimensioni e offre maggiore flessibilità nella formattazione delle funzioni dei connettori HTTP. In parole povere, si tratta di un formato strutturato basato su valori annidati l'uno nell'altro.
Vediamo come si usa la notazione a punti negli output dei connettori con un esempio.
Il seguente oggetto di esempio, chiamato "employees", contiene un array di oggetti con i dettagli di ciascun dipendente. Se si volesse accedere solo al titolo di ciascun dipendente, si userebbe la sintassi: employees.title. Utilizziamo un punto per accedere ai valori associati alle chiavi che ci interessano. Supponiamo di voler ottenere solo il primo risultato. Lo specificheremo aggiungendo la posizione dell'indice tra il nome dell'oggetto principale, "employees", e il valore che ci interessa, "title". La sintassi sarebbe: dipendenti.0.titolo. Per oggetti più complessi, potrebbe essere necessario andare più a fondo nell'oggetto per ottenere le informazioni desiderate.
Facciamo un ulteriore passo avanti con un altro esempio. In questo caso, supponiamo di essere interessati a creare una funzione di connettore per estrarre le informazioni associate agli articoli della Knowledge Base. Il nostro connettore restituisce il seguente nome di oggetto JSON "data", contenente dati su un particolare articolo:
Se volessimo prelevare solo, ad esempio, l'ID, il Titolo, la Versione e se l'articolo è nascosto o meno. Dovremmo specificarlo usando gli output. Vediamo come appare la notazione a punti nella sezione outputs dell'editor:
Per estrarre risultati come "id" e "title", dobbiamo specificare dove si trovano questi risultati all'interno del JSON. Il corpo dell'output è "data", corrispondente al primo menu a tendina della sezione Risultati del test. Ogni risultato all'interno del menu a tendina "data" è annidato in quell'oggetto. Nella sezione Output, un punto indica la profondità di un livello nell'oggetto "dati".
:::(Info) (NOTA) Non importa se il punto è posto nel corpo o davanti alle singole proprietà, purché ci sia un punto a separare ogni livello del JSON:
Quando si fa clic sulla scheda Output nella sezione Risultati del test, gli output filtrano il resto dei dati in modo da vedere solo le informazioni che ci interessano.
Un altro modo per scrivere gli output è in una singola riga. Questo mostra il percorso completo in una sola query.
Per scrivere il percorso di output in modo semplice, si può anche fare clic su una riga di dati per aggiungerla come nuovo output.
Per ulteriori informazioni sull'uso della notazione a punti, consultare questa risorsa: Come usare la notazione a punti per accedere alle informazioni in un oggetto JSON.
Risultati dell'output
Esistono diversi modi per strutturare gli output, ma il modo in cui lo si fa dipende interamente da ciò che si vuole fare con i dati nelle applicazioni. Prima di iniziare a strutturare gli output, bisogna pensare al proprio obiettivo finale. Si desidera visualizzare più tipi di dati in singole variabili? Oppure avete gli stessi tipi di dati in un array che volete semplicemente analizzare per trovare le informazioni rilevanti?
Gli esempi seguenti sono tutti basati sulla stessa funzione connettore e in ogni caso il corpo dei risultati del test è lo stesso. I risultati, tuttavia, variano in base alla loro struttura.
L'esempio seguente mostra l'output del connettore per il percorso JSON data.hits.slug. Per come è strutturato questo output, il connettore restituisce un grande array di tutti gli slug degli URL degli articoli della Knowledge Base. Nelle nostre applicazioni, questo output del connettore sarà accessibile all'interno di una variabile array.
Possiamo strutturare l'output come un elenco di oggetti ed estrarre i singoli tipi di dati dai risultati, creando più oggetti di dati che possono essere visibili singolarmente nelle applicazioni.
Gli elenchi di oggetti sono oggetti che contengono più tipi di dati annidati al loro interno. Per utilizzare gli elenchi di oggetti, fare clic sul tipo di output e selezionare l'interruttore Elenco nell'angolo destro.
Quando si dispone di un elenco di oggetti, è possibile utilizzare facilmente i diversi tipi di dati come singoli dati nelle applicazioni.
Se torniamo all'esempio precedente, rendiamo il nostro percorso di output data.hits.slug un elenco. Nei risultati sottostanti si può notare che Tulip struttura questo connettore come un array di slug, con ogni posizione di indice elencata accanto a ogni valore.
Tenendo presente questa comprensione degli output, ora è possibile mappare gli output per le proprie funzioni di connettore e ottimizzare i risultati restituiti dai propri connettori!
Ulteriori letture
- Usare i connettori HTTP nelle applicazioni
- Visualizzazione di elenchi interattivi di record di tabelle o di output di connettori nelle applicazioni
Avete trovato quello che cercavate?
Potete anche andare su community.tulip.co per porre la vostra domanda o vedere se altri hanno affrontato una questione simile!