Quando chiami il metodo ComputeRoutes()
, devi specificare i campi che vuoi che vengano restituiti nella risposta. A questo scopo, utilizza una maschera del campo di risposta, che
fornisci con il parametro URL $fields
o fields
oppure utilizzando
l'intestazione HTTP/gRPC X-Goog-FieldMask
. Per ulteriori informazioni, vedi
Parametri di sistema.
Maschera del campo
Il valore della maschera di campo è un elenco di percorsi di campo separati da virgole. Ogni percorso del campo è un elenco di nomi di campi separati da punti che rappresentano la gerarchia del messaggio. Il nome di un 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 poi 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 speciale è il carattere jolly "*", che seleziona tutti i campi di primo livello.
Esempi
L'esempio seguente mostra come impostare le maschere dei campi per il metodo
ComputeRoutes()
.
Esempio 1
Maschera del campo di tutti i campi disponibili (per l'ispezione manuale).
X-Goog-FieldMask: *
Esempio 2
Maschera del 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 risposta con carattere jolly (*) o la specifica della maschera di campo a livello principale (route) 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 tutti i campi a livello principale, potresti riscontrare un peggioramento delle prestazioni perché qualsiasi nuovo campo che aggiungiamo verrà automaticamente incluso nella risposta.
Il risultato è una dimensione della risposta più piccola, che si traduce in una maggiore velocità effettiva della rete.
Per saperne di più su come creare i percorsi dei campi, consulta field_mask.proto.