本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
地理编码
地理编码是一种将文本(例如地址、区域、企业名称或兴趣点)转换为一组地理坐标的过程。您可以使用地点索引资源提交地理编码请求,并合并从地理编码中检索到的数据,从而在 Web 或移动应用程序的地图上显示数据。
本节将指导您如何发送简单的地理编码请求,以及如何发送带有可选规格的地理编码请求。
地理编码
您可以使用将地址转换为一组坐标的SearchPlaceIndexForText
操作提交简单的地理编码请求。一个简单的请求包含以下必需参数:
-
Text
— 要转换为一组坐标的地址、名称、城市或区域。例如,字符串Any Town
。
要指定每页的最大结果数,请使用以下可选参数:
-
MaxResults
— 限制查询响应中返回的最大结果数。
您可以使用AWS CLI或亚马逊位置 API。
在位置附近进行地理编码
进行地理编码时,可以使用以下可选参数在给定位置附近进行地理编码:
-
BiasPosition
— 您要在附近搜索的位置。这会通过搜索最接近给定位置的结果来缩小搜索范围。定义为[longitude, latitude]
以下示例是在位置索引资源中搜索名为 Any T own
的地址、名称、城市或地区的SearchPlaceIndexForText
请求 [-123.4567
,45.6789
]。
POST /places/v0/indexes/ExamplePlaceIndex/search/text Content-type: application/json { "Text": "Any Town", "BiasPosition": [
-123.4567
,45.6789
] }
在边界框内进行地理编码
您可以使用以下可选参数在边界框内进行地理编码,将结果缩小到给定边界内的坐标:
-
FilterBBox
— 您指定的边界框,用于将结果筛选为方框边界内的坐标。定义为[LongitudeSW, LatitudeSW, LongitudeNE, LatitudeNE]
注意 请求不能同时包含
FilterBBox
和BiasPosition
参数。在请求中指定这两个参数会返回ValidationException
错误。
以下示例SearchPlaceIndexForText
请求在边界框内搜索名为 Any T ow
n 的地址、名称、城市或区域。边界框如下所示:
-
西南角的经度为
-124.1450
。 -
西南角的纬度为
41.7045
。 -
东北角的经度为
-124.1387
。 -
东北角的纬度为
41.7096
。
POST /places/v0/indexes/ExamplePlaceIndex/search/text Content-type: application/json { "Text": "Any Town", "FilterBBox": [
-124.1450
,41.7045
,-124.1387
,41.7096
] }
在一个国家/地区内进行地理编码
您可以使用以下可选参数在指定的一个或多个国家/地区内进行地理编码:
-
FilterCountries
— 您要在其中进行地理编码的国家或地区。您可以使用 ISO 3166三个字母的国家/地区代码在一次请求中定义多达 100 个国家。例如,在澳大利亚使用 AUS
。
以下示例是在德国和法国SearchPlaceIndexForText
请求搜索名为 Any T own
的地址、名称、城市或地区。
POST /places/v0/indexes/ExamplePlaceIndex/search/text Content-type: application/json { "Text": "Any Town", "FilterCountries": ["
DEU
","FRA
"] }
使用首选语言进行地理编码
您可以使用可选Language
参数为搜索结果设置语言首选项。例如,100 Main St, Any Town,
USA
默认情况下,搜索100 Main
St, Anytown, USA
可能会返回。但是,如果您选择fr
作为Language
,则结果可能会100 Rue
Principale, Any Town, États-Unis
改为返回。
-
Language
— 用于呈现查询结果的语言代码。该值必须是有效的 BCP 47语言代码。例如, en
对于英语。
Language
如果未指定,或者结果不支持指定语言,则将使用合作伙伴对该结果的默认语言。
以下示例SearchPlaceIndexforText
请求搜索名为Any Town
且首选语言指定为de
。
POST /places/v0/indexes/ExamplePlaceIndex/search/text Content-type: application/json { "Text": "Any Town", "Language": "de" }
响应示例
以下是您从 Amazon Location Places API 调用该SearchPlaceIndexForText
操作时的示例响应。结果包括相关地点和请求摘要。根据选择 Esri 或 HERE 作为合作伙伴,将显示两个响应。