Completamento automatico - Servizio di posizione Amazon

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Completamento automatico

Il completamento automatico fornisce un feedback tempestivo agli utenti finali durante la digitazione della query di ricerca. Fornisce suggerimenti per indirizzi e punti di interesse sulla base di testo in formato libero parziale o con errori di ortografia. È possibile utilizzare le risorse Place Index per richiedere suggerimenti di completamento automatico e visualizzare i suggerimenti risultanti nell'applicazione.

Amazon Location non supporta l'archiviazione dei suggerimenti di completamento automatico. Viene restituito un errore se l'indice dei luoghi utilizzato per una chiamata di completamento automatico è configurato per l'uso con i geocodici memorizzati. Per utilizzare i geocodici memorizzati e richiedere suggerimenti, crea e configura indici di luoghi multipli.

Questa sezione descrive come inviare una richiesta di completamento automatico. Inizia con il modulo più semplice della richiesta, quindi mostra i parametri opzionali che è possibile utilizzare per aumentare la pertinenza dei risultati di ricerca con completamento automatico.

Utilizzo del completamento automatico

È possibile inviare una semplice richiesta di suggerimenti per il completamento automatico utilizzando l'SearchPlaceIndexForSuggestionsoperazione. La forma più semplice di richiesta ha un solo parametro obbligatorio, la queryText:

  • Text— Il testo parziale in formato libero da utilizzare per generare suggerimenti di luoghi. Ad esempio, la stringa. eiffel tow

Per limitare il numero di risultati restituiti, aggiungi il MaxResults parametro opzionale:

  • MaxResults— Limita il numero di risultati restituiti nella risposta alla query.

Puoi utilizzare le API di Amazon Location o il AWS CLI.

API

L'esempio seguente è una SearchPlaceIndexForSuggestions richiesta di ricerca nella risorsa dell'indice dei luoghi, ExamplePlaceIndex, per un massimo di 5 suggerimenti basati sul nome parziale del luogo kamp.

POST /places/v0/indexes/ExamplePlaceIndex/search/suggestions Content-type: application/json { "Text": "kamp", "MaxResults": 5 }
AWS CLI

L'esempio seguente è un search-place-index-for-suggestions comando per cercare nella risorsa dell'indice dei luoghi ExamplePlaceIndex, fino a 5 suggerimenti basati sul nome parziale del luogo kamp.

aws location \ search-place-index-for-suggestions \ --index-name ExamplePlaceIndex \ --text kamp \ --max-results 5

La chiamata a SearchPlaceIndexForSuggestions genera un elenco di luoghi con un nome e un ID per ciascuno. Puoi utilizzare questi risultati per presentare suggerimenti su ciò che l'utente potrebbe cercare mentre sta digitando, ad esempio fornendo un elenco a discesa di scelte sotto una casella di testo. Ad esempio, ecco i risultati dei suggerimenti, basati su un utente che digita kamp.

{ "Summary": { "Text": "kamp", "MaxResults": 5, "DataSource": "Esri" }, "Results": [ { "Text": "Kampuchea", "PlaceId": "AQAAAIAADsn2T3KdrRWeaXLeVEyjNx_JfeTsMB0NVCEAnAZoJ-o3nqdlJZAdgcT2oWi1w9pS4wXXOk3O1vsKlGsPyHjV4EJxsu289i3hVO_BUPgP7SFoWAi8BW2v7LvAjQ5NfUPy7a1v9ajT3feIqcUZszWSTqKbJHFYvQqW7wdqhpQq3Wy-et39ZQDWSPLZUzgcjN-6VD2gyKkH0Po7gSm8YSJNSQ" }, { "Text": "Kampoul, Kabul, AFG", "PlaceId": "AQAAAIAAA1mxl_-9ffzXD07rBgo9fh6E01Pd1YKvuT5rz2qBDxqBkhTlgkeiOPR2s5sa3YBLxUqQI8bhymsYcu9R-DkX3L9QSi3CB5LhNPu160iSFJo6H8S1CrxO3QsJALhrr9mdbg0R4R4YDywkhkeBlnbn7g5C5LI_wYx873WeQZuilwtsGm8jcMA0Ya5oK4netQC6piVx6zmnPdwBs-UeXcb_bg" }, { "Text": "Kampala, UGA", "PlaceId": "AQAAAIAAzZfZt3qMruKGObyhP6MM0pqy2L8SULlVWT7a3ertLBRS6Q5n7I4s9D7E0nRHADAj7mL7kvX1Q8HD-mpuiATXNJ1Ix4_V_1B15zHe8jlYKMWvXbgbO8cMpgR2fqYqZMR1x-dfBOO8OoqujKZldvPIDK1kNe3GwcaqvvMWWPMeaGd203brFynubAe-MmFF-Gjz-WBMfUy9og6MV7bkk6NGCA" }, { "Text": "Kampar, Riau, IDN", "PlaceId": "AQAAAIAAvbXXx-srOi111tHOkPdao0GF7WQ_KaZ444SEnevycp6Gtf_2JWgPfCE5bIQCYwya1uZQpX2a8YJoFm2K7Col4fLu7IK0yYOLhZx4kp6QzbG4xEAGzfWtWq6nfbb0lZfuHY6r0g1sRlN1aucvwim4AEcKRzckqaa93JI8064pj6Q59kN37pAa3JX4ayEzH1DzIL3m3oqxzd4O16yGfhAIgA" }, { "Text": "Kampung Pasir Gudang Baru, Johor, MYS", "PlaceId": "AQAAAIAA4HLQHdjUDcaaXLE9wtNIT1cjQYLgkBnMoG2eNN0AaQ8PJoWabLRXmmPUaAj8MAD6vT0i6zqaun5Mixyj7vnYXrk2xp59cbgdqvQaPoWhSCVxBOX0WGs3cZ8TnIRn3c-6v8_UfmqC7es1gUyECfMGK04VBKiwpHwCzjNsqymkd9BC3A9K3QlMgd3dkrGjv_vV94iLlnFTbaecrckl2UDCkA" } ] }

La sezione successiva spiega come utilizzare i risultati ottenuti PlaceID da questi risultati.

Utilizzo dei risultati del completamento automatico

La chiamata a SearchPlaceIndexForSuggestions genera un elenco di luoghi con un nome e un ID per ciascuno. Puoi utilizzare questi risultati per presentare suggerimenti su ciò che l'utente potrebbe cercare mentre sta digitando, ad esempio fornendo un elenco a discesa di scelte sotto una casella di testo. Quando l'utente sceglie uno dei risultati, puoi quindi richiamare l'GetPlaceoperazione con l'ID selezionato per restituire i dettagli di quel luogo, tra cui posizione, indirizzo o altri dettagli.

Nota

A PlaceId è valido solo se tutti i seguenti elementi sono uguali nella richiesta di ricerca originale e nella chiamata aGetPlace.

  • Cliente Account AWS

  • Regione AWS

  • Fornitore di dati specificato nella risorsa dell'indice dei luoghi

In genere, lo usi GetPlace con le API di localizzazione di Amazon. L'esempio seguente è una GetPlace richiesta per trovare uno dei suggerimenti della sezione precedente. Questo esempio si basa sul toponimo parziale kamp.

POST /places/v0/indexes/ExamplePlaceIndex/places/AQAAAIAADsn2T3KdrRWeaXLeVEyjNx_JfeTsMB0NVCEAnAZoJ-o3nqdlJZAdgcT2oWi1w9pS4wXXOk3O1vsKlGsPyHjV4EJxsu289i3hVO_BUPgP7SFoWAi8BW2v7LvAjQ5NfUPy7a1v9ajT3feIqcUZszWSTqKbJHFYvQqW7wdqhpQq3Wy-et39ZQDWSPLZUzgcjN-6VD2gyKkH0Po7gSm8YSJNSQ

Completamento automatico vicino a una posizione

Quando cerchi suggerimenti di luoghi con completamento automatico utilizzandoSearchPlaceIndexForSuggestions, puoi ottenere suggerimenti più rilevanti a livello locale aggiungendo il seguente parametro opzionale:

  • BiasPosition— La posizione in cui desideri cercare nelle vicinanze. Definito come[longitude, latitude].

L'esempio seguente utilizza una SearchPlaceIndexForSuggestions richiesta per cercare nella risorsa ExamplePlaceIndexdell'indice dei luoghi suggerimenti di luoghi corrispondenti alla query parziale kamp vicino alla posizione [32.5827, 0.3169].

POST /places/v0/indexes/ExamplePlaceIndex/search/suggestions Content-type: application/json { "Text": "kamp", "BiasPosition": [32.5827,0.3169] }

I suggerimenti restituiti per lo stesso Text possono essere diversi se ne BiasPosition viene scelto uno diverso, ad esempio [-96.7977, 32.7776].

Completamento automatico all'interno di un riquadro di delimitazione

Puoi restringere la ricerca con completamento automatico per ricevere solo suggerimenti per i luoghi che si trovano all'interno di un determinato confine aggiungendo il seguente parametro opzionale:

  • FilterBBox— Un riquadro di delimitazione specificato per filtrare i risultati in base alle coordinate all'interno dei confini del riquadro. Definito come [LongitudeSW, LatitudeSW, LongitudeNE, LatitudeNE]

    Nota

    Una richiesta non può contenere sia FilterBBox i BiasPosition parametri che. Se si specificano entrambi i parametri nella richiesta, viene restituito un ValidationException errore.

L'esempio seguente utilizza una SearchPlaceIndexForSuggestions richiesta per cercare nella risorsa ExamplePlaceIndexdell'indice dei luoghi suggerimenti di luoghi corrispondenti alla query parziale kamp e che sono contenuti nel riquadro di delimitazione in cui:

  • La longitudine dell'angolo sud-ovest del riquadro di delimitazione è 32,5020.

  • La latitudine dell'angolo sud-ovest del riquadro di delimitazione è 0,2678.

  • La longitudine dell'angolo nord-est del riquadro di delimitazione è 32,6129.

  • La latitudine dell'angolo nord-est del riquadro di delimitazione è 0,3502.

POST /places/v0/indexes/ExamplePlaceIndex/search/suggestions Content-type: application/json { "Text": "kamp", "FilterBBox": [ 32.5020, 0.2678, 32.6129, 0.3502 ] }

I suggerimenti restituiti per lo stesso Text sono diversi se ne FilterBBox viene scelto uno diverso, ad esempio [-97.9651, 32.0640, -95.1196, 34.0436].

Completamento automatico all'interno di un paese

Puoi restringere la ricerca con completamento automatico per ricevere solo suggerimenti per luoghi che si trovano all'interno di un determinato paese o di un insieme di paesi, aggiungendo il seguente parametro opzionale:

  • FilterCountries— I paesi in cui desideri cercare suggerimenti di luoghi. Puoi specificare fino a 100 paesi in una richiesta utilizzando un codice internazionale di tre lettere ISO 3166. Ad esempio, utilizzalo AUS per l'Australia.

L'esempio seguente utilizza una SearchPlaceIndexForSuggestions richiesta per cercare nella risorsa ExamplePlaceIndexdell'indice dei luoghi suggerimenti di luoghi corrispondenti alla query parziale kamp e contenuti in Uganda, Kenya o Tanzania:

POST /places/v0/indexes/ExamplePlaceIndex/search/suggestions Content-type: application/json { "Text": "kamp", "FilterCountries": ["UGA", "KEN", "TZA"] }

I suggerimenti restituiti per lo stesso Text sono diversi se viene scelto un FilterCountries elenco diverso, ad esempio [» USA «].

Example response

Di seguito è riportato un esempio di risposta dei completamenti automatici suggeriti per l'SearchPlaceIndexForSuggestionsoperazione, utilizzando il testo kamp.

{ "Summary": { "Text": "kamp", "MaxResults": 5, "DataSource": "Esri" }, "Results": [ { "Text": "Kampuchea", "PlaceId": "AQAAAIAADsn2T3KdrRWeaXLeVEyjNx_JfeTsMB0NVCEAnAZoJ-o3nqdlJZAdgcT2oWi1w9pS4wXXOk3O1vsKlGsPyHjV4EJxsu289i3hVO_BUPgP7SFoWAi8BW2v7LvAjQ5NfUPy7a1v9ajT3feIqcUZszWSTqKbJHFYvQqW7wdqhpQq3Wy-et39ZQDWSPLZUzgcjN-6VD2gyKkH0Po7gSm8YSJNSQ" }, { "Text": "Kampoul, Kabul, AFG", "PlaceId": "AQAAAIAAA1mxl_-9ffzXD07rBgo9fh6E01Pd1YKvuT5rz2qBDxqBkhTlgkeiOPR2s5sa3YBLxUqQI8bhymsYcu9R-DkX3L9QSi3CB5LhNPu160iSFJo6H8S1CrxO3QsJALhrr9mdbg0R4R4YDywkhkeBlnbn7g5C5LI_wYx873WeQZuilwtsGm8jcMA0Ya5oK4netQC6piVx6zmnPdwBs-UeXcb_bg" }, { "Text": "Kampala, UGA", "PlaceId": "AQAAAIAAzZfZt3qMruKGObyhP6MM0pqy2L8SULlVWT7a3ertLBRS6Q5n7I4s9D7E0nRHADAj7mL7kvX1Q8HD-mpuiATXNJ1Ix4_V_1B15zHe8jlYKMWvXbgbO8cMpgR2fqYqZMR1x-dfBOO8OoqujKZldvPIDK1kNe3GwcaqvvMWWPMeaGd203brFynubAe-MmFF-Gjz-WBMfUy9og6MV7bkk6NGCA" }, { "Text": "Kampar, Riau, IDN", "PlaceId": "AQAAAIAAvbXXx-srOi111tHOkPdao0GF7WQ_KaZ444SEnevycp6Gtf_2JWgPfCE5bIQCYwya1uZQpX2a8YJoFm2K7Col4fLu7IK0yYOLhZx4kp6QzbG4xEAGzfWtWq6nfbb0lZfuHY6r0g1sRlN1aucvwim4AEcKRzckqaa93JI8064pj6Q59kN37pAa3JX4ayEzH1DzIL3m3oqxzd4O16yGfhAIgA" }, { "Text": "Kampung Pasir Gudang Baru, Johor, MYS", "PlaceId": "AQAAAIAA4HLQHdjUDcaaXLE9wtNIT1cjQYLgkBnMoG2eNN0AaQ8PJoWabLRXmmPUaAj8MAD6vT0i6zqaun5Mixyj7vnYXrk2xp59cbgdqvQaPoWhSCVxBOX0WGs3cZ8TnIRn3c-6v8_UfmqC7es1gUyECfMGK04VBKiwpHwCzjNsqymkd9BC3A9K3QlMgd3dkrGjv_vV94iLlnFTbaecrckl2UDCkA" } ] }