Come formattare gli output del connettore HTTP
  • 31 Oct 2023
  • 5 Minuti da leggere
  • Contributori

Come formattare gli output del connettore HTTP


Article Summary

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.

Testing Outputs.gif

Come strutturare gli output

La sezione Output si trova in basso a sinistra nell'editor di funzioni del connettore.

Outputs3.png

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.

Screenshot 2023-03-23 at 9.57.16 AM.png

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.

Object Anatomy Diagram.png

:::(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.

Outputs Ex2.png

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:

Test Results Article Ex.png

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:

Outputs to Test Results Annotated.png

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:

Outputs to Test Results2.png

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.

Outputs Single Line.png

Per scrivere il percorso di output in modo semplice, si può anche fare clic su una riga di dati per aggiungerla come nuovo output.

Create Output Path.gif

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.

Output 3x540 v2.png

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.

Output 540x3.png

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.

Outputs Lists Toggle.gif

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.

Test Results as Slugs.png

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


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!


Questo articolo è stato utile?