Scegli i campi da restituire

Quando chiami il metodo ComputeRoutes(), devi specificare i campi che vuoi che vengano restituiti nella risposta. A tal fine, utilizza una maschera di campo di risposta, che fornisci con il parametro URL $fields o fields, oppure l'intestazione HTTP/gRPC X-Goog-FieldMask. Per ulteriori informazioni, consulta Parametri di sistema.

Maschera di campo

Il valore della maschera di campo è un elenco separato da virgole di percorsi dei campi. Ogni percorso del campo è un elenco separato da punti di nomi di campi che rappresentano la gerarchia dei messaggi. Un nome di campo è la chiave dell'oggetto JSON o il nome del tag del campo protobuf. Il percorso del campo inizia dal tipo di messaggio di risposta di primo livello ed è facoltativamente seguito da uno o più punti e dal livello successivo del nome del campo. In generale, i percorsi dei campi vengono creati nel seguente modo:

topLevelField[.secondLevelField][.thirdLevelField][...]

Una maschera di campo per casi speciali è un carattere jolly “*”, che seleziona tutti i campi di livello radice.

Esempi

L'esempio seguente mostra come impostare le maschere di campo per il metodoComputeRoutes().

Esempio 1

Maschera di tutti i campi disponibili (per l'ispezione manuale).

X-Goog-FieldMask: *

Esempio 2

Maschera di campo di durata, distanza e polilinea a livello di percorso (un esempio di configurazione di produzione).

X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline

Sconsigliamo l'utilizzo della maschera di campo della risposta con caratteri jolly (*) o la specifica della maschera di campo a livello superiore (percorsi) in produzione. Selezionando solo i campi di cui hai bisogno:

  • Consente al nostro server di risparmiare cicli di elaborazione, il che ci consente di restituire i risultati con una latenza inferiore.

  • Garantisce prestazioni di latenza stabili. In futuro potremmo aggiungere altri campi di risposta e questi nuovi campi potrebbero richiedere tempi di calcolo aggiuntivi. Se selezioni tutti i campi o se selezioni tutti i campi al livello superiore, potresti riscontrare un peggioramento delle prestazioni, perché ogni nuovo campo che aggiungiamo verrà incluso automaticamente nella risposta.

  • Si ottengono dimensioni di risposta più piccole, che si traducono in una maggiore ampiezza di banda della rete.

Per ulteriori informazioni su come creare percorsi dei campi, consulta field_mask.proto.