Use Sugerir e a capacidade de filtrar por uma região ou país - Amazon Location Service

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Use Sugerir e a capacidade de filtrar por uma região ou país

A API Suggest permite concluir consultas por lugares ou categorias de resultados. Os resultados são classificados de acordo com as correspondências mais prováveis e as menos prováveis. Além disso, você pode filtrar ainda mais os resultados para regiões ou países específicos.

Casos de uso em potencial

  • Filtre os resultados: ao realizar uma pesquisa, você pode filtrar por país ou somente pela região em que sua empresa opera.

Exemplos

Adicionar um filtro por país garante que você receba apenas os resultados mais relevantes. Use o filtro. IncludeCountries para isso.

Sample request
{ "QueryText": "hote", "BiasPosition": [ 2.2982750966095398, 48.856078089325294 ], "Filter": { "IncludeCountries": [ "FRA" ] }, "AdditionalFeatures": [ "Core" ] }
Sample response
{ "ResultItems": [ { "Title": "Hôtel de Matignon (Hôtel Matignon)", "SuggestResultItemType": "Place", "Place": { "PlaceId": "Redacted", "PlaceType": "PointOfInterest", "Address": { "Label": "Hôtel de Matignon, 57 Rue de Varenne, 75007 Paris, France", "Country": { "Code2": "FR", "Code3": "FRA", "Name": "France" }, "Region": { "Code": "IDF", "Name": "Île-de-France" }, "SubRegion": { "Name": "Paris" }, "Locality": "Paris", "District": "7e Arrondissement", "PostalCode": "75007", "Street": "Rue de Varenne", "StreetComponents": [ { "BaseName": "Varenne", "Type": "Rue de", "TypePlacement": "BeforeBaseName", "TypeSeparator": " ", "Language": "fr" } ], "AddressNumber": "57" }, "Position": [ 2.32072, 48.85471 ], "Distance": 1650, "Categories": [ { "Id": "tourist_attraction", "Name": "Tourist Attraction", "LocalizedName": "Attraction touristique", "Primary": true }, { "Id": "landmark-attraction", "Name": "Landmark-Attraction", "LocalizedName": "Lieu d'intérêt/Attraction", "Primary": false }, { "Id": "historical_monument", "Name": "Historical Monument", "LocalizedName": "Monument historique", "Primary": false }, { "Id": "residential_area-building", "Name": "Residential Area-Building", "LocalizedName": "Bâtiment résidentiel", "Primary": false } ] }, "Highlights": { "Title": [ { "StartIndex": 0, "EndIndex": 4, "Value": "Hôt" }, { "StartIndex": 19, "EndIndex": 23, "Value": "(Hô" } ], "Address": { "Label": [ { "StartIndex": 0, "EndIndex": 4, "Value": "Hôt" } ] } } }, ... { "Title": "Hotel", "SuggestResultItemType": "Query", "Query": { "QueryId": "Redacted", "QueryType": "Category" }, "Highlights": { "Title": [ { "StartIndex": 0, "EndIndex": 4, "Value": "Hote" } ] } }, ... ], "QueryRefinements": [] }
cURL
curl --request POST \ --url 'https://places.geo.eu-central-1.amazonaws.com/v2/suggest?key=Your_Key' \ --header 'Content-Type: application/json' \ --data '{ "QueryText": "hote", "BiasPosition": [ 2.2982750966095398, 48.856078089325294 ], "Filter": { "IncludeCountries": [ "FRA" ] }, "AdditionalFeatures": [ "Core" ] }'
AWS CLI
aws geo-places suggest --key ${YourKey} \ --query-text "hote" \ --bias-position 2.2982750966095398 48.856078089325294 \ --filter '{"IncludeCountries": ["FRA"]}' \ --additional-features "Core"

Adicionar uma filter-by-region opção para uma pesquisa limita os resultados somente àqueles que se encaixam na região fornecida. Isso é usado para limitar o escopo da pesquisa à região que diz respeito à sua empresa. O exemplo a seguir mostra uma pesquisa com erros ortográficos por hotéis Marriott perto da área de Boston sendo concluída com alguns resultados de hotéis e uma consulta de acompanhamento.

Sample request
{ "QueryText": "Mariot", "Filter": { "IncludeCountries": [ "USA" ], "BoundingBox": [ -71.15693983012913,42.261623506672635, -70.97249727163558,42.37584075627763 ] }, "AdditionalFeatures": [ "Core" ] }
Sample response
{ "ResultItems": [ { "Title": "Boston Marriott Copley Place", "SuggestResultItemType": "Place", "Place": { "PlaceId": "Redacted", "PlaceType": "PointOfInterest", "Address": { "Label": "Boston Marriott Copley Place, 110 Huntington Ave, Boston, MA 02116, United States", "Country": { "Code2": "US", "Code3": "USA", "Name": "United States" }, "Region": { "Code": "MA", "Name": "Massachusetts" }, "SubRegion": { "Name": "Suffolk" }, "Locality": "Boston", "District": "Back Bay", "PostalCode": "02116", "Street": "Huntington Ave", "StreetComponents": [ { "BaseName": "Huntington", "Type": "Ave", "TypePlacement": "AfterBaseName", "TypeSeparator": " ", "Language": "en" } ], "AddressNumber": "110" }, "Position": [ -71.07769, 42.34726 ], "Distance": 3347, "Categories": [ { "Id": "hotel", "Name": "Hotel", "LocalizedName": "Hotel", "Primary": true } ], "BusinessChains": [ { "Name": "Marriott", "Id": "Marriott" } ], "AccessPoints": [ { "Position": [ -71.07922, 42.34665 ] } ] }, "Highlights": { "Title": [ { "StartIndex": 7, "EndIndex": 14, "Value": "Marriot" } ], "Address": { "Label": [ { "StartIndex": 7, "EndIndex": 14, "Value": "Marriot" } ] } } }, ... { "Title": "Marriott", "SuggestResultItemType": "Query", "Query": { "QueryId": "Redacted", "QueryType": "BusinessChain" }, "Highlights": { "Title": [ { "StartIndex": 0, "EndIndex": 8, "Value": "Marriott" } ] } }, ... ], "QueryRefinements": [] }
cURL
curl --request POST \ --url 'https://places.geo.eu-central-1.amazonaws.com/v2/suggest?key=Your_Key' \ --header 'Content-Type: application/json' \ --data '{ "QueryText": "Mariot", "Filter": { "IncludeCountries": [ "USA" ], "BoundingBox": [ -71.15693983012913,42.261623506672635, -70.97249727163558,42.37584075627763 ] }, "AdditionalFeatures": [ "Core" ] }'
AWS CLI
aws geo-places suggest --key ${YourKey} \ --query-text "hote" \ --filter '{"IncludeCountries": ["FRA"], "BoundingBox": [ -71.15693983012913,42.261623506672635, -70.97249727163558,42.37584075627763]}' \ --additional-features "Core"

Dicas para desenvolvedores

Exiba os resultados da pesquisa usando o campo de Title resposta para fornecer aos usuários entradas concisas e reconhecíveis. Para resultados que possam parecer semelhantes, use o Place.Address.Label campo para mostrar detalhes adicionais do endereço que ajudem os usuários a distingui-los. Para obter mais informações, consulte Como ajudar os usuários a eliminar a ambiguidade entre resultados semelhantes.