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.