你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Search - Get Search Address Reverse

用于从纬度和经度坐标获取街道地址和位置信息。
API Get Search Address Reverse 是 和 HTTP GET 请求,在给定的纬度和经度坐标时返回街道地址或位置。

有时可能需要将坐标 (示例:37.786505、-122.3862) 转换为人类可理解的街道地址。 大多数情况下,在从设备或资产接收 GPS 源并希望知道坐标所在的地址的跟踪应用程序中,这通常是必需的。 此终结点将返回给定坐标的地址信息。

GET https://atlas.microsoft.com/search/address/reverse/{format}?api-version=1.0&query={query}
GET https://atlas.microsoft.com/search/address/reverse/{format}?api-version=1.0&query={query}&language={language}&returnSpeedLimit={returnSpeedLimit}&heading={heading}&radius={radius}&number={number}&returnRoadUse={returnRoadUse}&roadUse={roadUse}&allowFreeformNewline={allowFreeformNewline}&returnMatchType={returnMatchType}&entityType={entityType}&view={view}

URI 参数

名称 必需 类型 说明
format
path True

ResponseFormat

响应的所需格式。 值可以是 jsonxml

api-version
query True

string

Azure Maps API 的版本号。

query
query True

number[]

指定为由纬度后跟经度组成的逗号分隔字符串的适用查询,例如“47.641268,-122.125679”。

allowFreeformNewline
query

boolean

格式化地址中的换行符的格式。

如果为 true,则地址将包含换行符。 如果为 false,则换行符将转换为逗号。

entityType
query

GeographicEntityType

指定对地理位置执行的筛选级别。 缩小对指定地理实体类型的搜索范围,例如仅返回市政当局。 生成的响应将包含地理 ID 以及匹配的实体类型。 如果提供多个实体作为逗号分隔列表,终结点将返回“可用最小实体”。 返回的几何 ID 可用于通过获取搜索多边形 API 获取该地理位置的几何图形。 设置 entityType 时,将忽略以下参数:

  • 标题
  • 数字
  • returnRoadUse
  • returnSpeedLimit
  • roadUse
  • returnMatchType
heading
query

integer

车辆的方向方向(以度为单位),用于沿一段道路行驶。 0 为 North,90 为 East,依此,值范围为 -360 到 360。 精度最多可以包括一个小数位数

language
query

string

应返回搜索结果的语言。 应该是受支持的 IETF 语言标记之一,不区分大小写。 当指定语言的数据不适用于特定字段时,将使用默认语言。

有关详细信息,请参阅 支持的语言

number
query

string

作为字符串的街道号。 如果数字随请求一起发送,则响应可能包括街道的一侧 (左/右) 以及该数字的偏移位置

radius
query

integer

结果要约束到定义的区域的半径(以米为单位)

returnMatchType
query

boolean

包括有关响应中实现的地理编码器匹配类型的信息。

returnRoadUse
query

boolean

布尔值。 启用道路使用数组返回街道级别反向地理编码

returnSpeedLimit
query

boolean

布尔值。 启用已发布速度限制的返回

roadUse
query

RoadUseType[]

将反向地理编码限制为特定类型的道路使用。 反向地理编码的道路使用数组可以是一个或多个 LimitedAccess、动脉、终端、坡道、旋转、LocalStreet

view
query

LocalizedMapView

View 参数 (也称为“用户区域”参数,) 允许您为地缘政治争议区域显示特定国家/地区的正确地图。 不同的国家/地区对此类区域有不同的视图,并且 View 参数允许应用程序符合应用程序将服务的国家/地区所需的视图。 默认情况下,View 参数设置为“Unified”,即使你尚未在请求中定义它。 由你负责确定用户的位置,然后为该位置正确设置 View 参数。 或者,可以选择设置“View=Auto”,这将基于请求的 IP 地址返回地图数据。 Azure Maps 中的 View 参数的使用必须符合适用的法律,包括与地图、图像和其他数据以及你有权通过Azure Maps访问的第三方内容的国家/地区相关的法律。 示例:view=IN。

有关详细信息和可用的 视图 ,请参阅支持的视图。

请求头

名称 必需 类型 说明
x-ms-client-id

string

指定要与Microsoft Entra ID安全模型一起使用的帐户。 它表示Azure Maps帐户的唯一 ID,可以从Azure Maps管理平面帐户 API 检索。 若要在 Azure Maps 中使用Microsoft Entra ID安全性,请参阅以下文章以获取指导。

响应

名称 类型 说明
200 OK

ReverseSearchAddressResult

确定

Other Status Codes

ErrorResponse

发生了意外错误。

安全性

AADToken

这些是 OAuth 2.0 流Microsoft Entra。 与 Azure 基于角色的访问控制配对后,它可用于控制对 Azure Maps REST API 的访问。 Azure 基于角色的访问控制用于指定对一个或多个Azure Maps资源帐户或子资源的访问权限。 可以通过内置角色或由一个或多个权限组成的自定义角色授予任何用户、组或服务主体访问权限,以Azure Maps REST API。

若要实现方案,建议查看 身份验证概念。 总之,此安全定义提供了一个解决方案,用于通过能够对特定 API 和作用域进行访问控制的对象对应用程序 () 建模。

注意

  • 此安全定义需要使用x-ms-client-id 标头来指示应用程序请求访问哪个Azure Maps资源。 这可以从 地图管理 API 获取。
  • Authorization URL特定于 Azure 公有云实例。 主权云具有唯一的授权 URL 和Microsoft Entra ID配置。
  • Azure 基于角色的访问控制是通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 从 Azure 管理平面配置的。
  • 使用 Azure Maps Web SDK 可以针对多个用例基于配置设置应用程序。
  • 有关Microsoft 标识平台的详细信息,请参阅Microsoft 标识平台概述

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

名称 说明
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

这是在Azure 门户或使用 PowerShell、CLI、Azure SDK 或 REST API 创建Azure Maps帐户时预配的共享密钥。

使用此密钥,任何应用程序都可以访问所有 REST API。 换句话说,此密钥可以用作颁发它们的帐户中的主密钥。

对于公开的应用程序,我们建议使用机密客户端应用程序方法来访问Azure Maps REST API,以便安全地存储密钥。

Type: apiKey
In: query

SAS Token

这是一个共享访问签名令牌,通过 Azure 管理平面通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 在Azure Maps资源上列出 SAS 操作创建。

使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域 () 。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。

对于公开的应用程序,我们建议在 映射帐户资源 上配置允许的来源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。

Type: apiKey
In: header

示例

Searches addresses for coordinates 37.337,-121.89

Sample Request

GET https://atlas.microsoft.com/search/address/reverse/json?api-version=1.0&query=37.337,-121.89

Sample Response

{
  "summary": {
    "queryTime": 5,
    "numResults": 1
  },
  "addresses": [
    {
      "address": {
        "streetNumber": "31",
        "routeNumbers": [],
        "streetName": "N 2nd St",
        "streetNameAndNumber": "31 N 2nd St",
        "countryCode": "US",
        "countrySubdivisionCode": "CA",
        "countrySubdivisionName": "California",
        "municipality": "San Jose",
        "postalCode": "95113",
        "country": "United States of America",
        "countryCodeISO3": "USA",
        "freeformAddress": "31 N 2nd St, San Jose CA 95113",
        "extendedPostalCode": "951131217"
      },
      "position": "37.337090,-121.889820"
    }
  ]
}

定义

名称 说明
Address

结果的地址

BoundingBoxCompassNotation

位置的边界框。

Entity

边界框的实体类型源。 对于反向地理编码,这始终等于位置。

ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

GeographicEntityType

Geography 实体类型。 仅在请求 entityType 且可用时显示。

LatLongPairAbbreviated

使用短名称“lat”&“lon”表示为纬度和经度的位置。

LocalizedMapView

View 参数 (也称为“用户区域”参数) 允许你为地缘政治争议区域显示特定国家/地区的正确地图。 不同的国家/地区对此类区域有不同的视图,并且 View 参数允许应用程序符合应用程序将服务的国家/地区所需的视图。 默认情况下,View 参数设置为“Unified”,即使尚未在请求中定义它。 由你负责确定用户的位置,然后为该位置正确设置 View 参数。 或者,可以选择设置“View=Auto”,这将基于请求的 IP 地址返回地图数据。 Azure Maps 中的 View 参数的使用必须符合适用的法律,包括与地图、图像和其他数据以及你有权通过Azure Maps访问的第三方内容的国家/地区相关的法律。 示例:view=IN。

有关详细信息和可用的 视图 ,请参阅支持的视图。

MatchType

反向地址搜索操作的匹配类型。

QueryType

返回的查询类型:NEARBY 或 NON_NEAR。

ResponseFormat

响应的所需格式。 值可以是 jsonxml

ReverseSearchAddressResult

此对象是从成功的搜索地址反向调用返回的

ReverseSearchAddressResultItem

搜索地址反向响应的结果对象

RoadUseType

描述道路的可能用途。

SearchSummary

搜索 API 响应的摘要对象。

Address

结果的地址

名称 类型 说明
boundingBox

BoundingBoxCompassNotation

位置的边界框。

buildingNumber

string

街上的楼号。 已弃用,请改用 streetNumber。

country

string

国家/地区名称

countryCode

string

国家/地区 (注意:这是一个双字母代码,而不是国家/地区名称。)

countryCodeISO3

string

ISO alpha-3 国家/地区代码

countrySecondarySubdivision

string

countrySubdivision

string

省/市/自治区

countrySubdivisionCode

string

countrySubdivisionCode 前缀 countryCode 为 ( countryCode-countrySubdivisionCode ) ,连字符构成 ISO 3166-2 代码。 示例:TX for Texas、SCT for Scotland 和 ON for On for On for On.

countrySubdivisionName

string

国家/地区管理层次结构的第一个级别的全名。 仅当 countrySubdivision 以缩写形式显示时,才会显示此字段。 仅支持美国、加拿大和英国。

countryTertiarySubdivision

string

命名区域

crossStreet

string

要交叉的街道的名称。

extendedPostalCode

string

扩展邮政编码 (可用性取决于区域) 。

freeformAddress

string

根据结果所在国家/地区/地区的格式规则设置格式的地址行,如果是国家/地区,则为完整的国家/地区名称。

localName

string

一个地址组件,表示地理区域或位置的名称,该地理区域或位置将多个可寻址对象分组用于寻址目的,而不作为管理单元。 此字段用于生成 freeformAddress 属性。 localName 表示邮政市政当局。 根据位置, localName 是城市或城镇的常见名称。 对于城市或城镇的常见名称,请使用 localName 而不是 municipality

municipality

string

城市/城镇
注意: municipality 表示住宅城市。 根据位置, municipality 该值可能与城市或城镇的常见名称不同。 对于城市或城镇的常见名称,建议 localName 使用 值而不是 municipality 值。

municipalitySubdivision

string

亚/超级城市

neighbourhood

string

邻里是城市或城镇内的地理本地化区域,具有鲜明的特点和居民之间的社会互动。

postalCode

string

邮政编码/邮政编码

routeNumbers

string[]

用于明确标识街道的代码

street

string

街道名称。 已弃用,请改用 streetName。

streetName

string

街道名称。

streetNameAndNumber

string

街道名称和编号。

streetNumber

string

街上的楼号。

BoundingBoxCompassNotation

位置的边界框。

名称 类型 说明
entity

Entity

边界框的实体类型源。 对于反向地理编码,这始终等于位置。

northEast

string

以逗号分隔的浮点为边界框的东北纬度、经度坐标

southWest

string

以逗号分隔的浮点形式的边界框的西南-西纬度、经度坐标

Entity

边界框的实体类型源。 对于反向地理编码,这始终等于位置。

名称 类型 说明
position

string

位置实体

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

GeographicEntityType

Geography 实体类型。 仅在请求 entityType 且可用时显示。

名称 类型 说明
Country

string

国家/地区名称

CountrySecondarySubdivision

string

CountrySubdivision

string

省/市/自治区

CountryTertiarySubdivision

string

命名区域

Municipality

string

城市/城镇

MunicipalitySubdivision

string

亚/超级城市

Neighbourhood

string

附近

PostalCodeArea

string

邮政编码/邮政编码

LatLongPairAbbreviated

使用短名称“lat”&“lon”表示为纬度和经度的位置。

名称 类型 说明
lat

number

Latitude 属性

lon

number

Longitude 属性

LocalizedMapView

View 参数 (也称为“用户区域”参数) 允许你为地缘政治争议区域显示特定国家/地区的正确地图。 不同的国家/地区对此类区域有不同的视图,并且 View 参数允许应用程序符合应用程序将服务的国家/地区所需的视图。 默认情况下,View 参数设置为“Unified”,即使尚未在请求中定义它。 由你负责确定用户的位置,然后为该位置正确设置 View 参数。 或者,可以选择设置“View=Auto”,这将基于请求的 IP 地址返回地图数据。 Azure Maps 中的 View 参数的使用必须符合适用的法律,包括与地图、图像和其他数据以及你有权通过Azure Maps访问的第三方内容的国家/地区相关的法律。 示例:view=IN。

有关详细信息和可用的 视图 ,请参阅支持的视图。

名称 类型 说明
AE

string

阿拉伯联合酋长国(阿拉伯视图)

AR

string

阿根廷(阿根廷视图)

Auto

string

根据请求的 IP 地址返回地图数据。

BH

string

巴林(阿拉伯视图)

IN

string

印度(印度视图)

IQ

string

伊拉克(阿拉伯视图)

JO

string

约旦(阿拉伯视图)

KW

string

科威特(阿拉伯视图)

LB

string

黎巴嫩(阿拉伯视图)

MA

string

摩洛哥(摩洛哥视图)

OM

string

阿曼(阿拉伯视图)

PK

string

巴基斯坦(巴基斯坦视图)

PS

string

巴勒斯坦权力机构(阿拉伯视图)

QA

string

卡塔尔(阿拉伯视图)

SA

string

沙特阿拉伯(阿拉伯视图)

SY

string

叙利亚(阿拉伯视图)

Unified

string

统一视图(其他)

YE

string

也门(阿拉伯视图)

MatchType

反向地址搜索操作的匹配类型。

名称 类型 说明
AddressPoint

string

HouseNumberRange

string

Street

string

QueryType

返回的查询类型:NEARBY 或 NON_NEAR。

名称 类型 说明
NEARBY

string

搜索围绕定义的半径的特定纬度和经度执行

NON_NEAR

string

搜索是全局执行的,没有偏差到特定的纬度和经度,也没有定义的半径

ResponseFormat

响应的所需格式。 值可以是 jsonxml

名称 类型 说明
json

string

JavaScript 对象表示法数据交换格式

xml

string

可扩展标记语言

ReverseSearchAddressResult

此对象是从成功的搜索地址反向调用返回的

名称 类型 说明
addresses

ReverseSearchAddressResultItem[]

Addresses 数组

summary

SearchSummary

搜索地址反向响应的摘要对象

ReverseSearchAddressResultItem

搜索地址反向响应的结果对象

名称 类型 说明
address

Address

结果的地址

matchType

MatchType

有关匹配类型的信息。

下列其中一项:

  • AddressPoint
  • HouseNumberRange
  • 街道
position

string

格式为“{latitude},{longitude}”的 Position 属性

roadUse

RoadUseType[]

描述道路的可能用途。

RoadUseType

描述道路的可能用途。

名称 类型 说明
Arterial

string

LimitedAccess

string

LocalStreet

string

Ramp

string

Rotary

string

Terminal

string

SearchSummary

搜索 API 响应的摘要对象。

名称 类型 说明
fuzzyLevel

integer

提供结果所需的最大模糊级别。

geoBias

LatLongPairAbbreviated

指示内部搜索引擎应用地理空间偏差以提高结果排名。 在某些方法中,这可以通过设置 lat 和 lon 参数(如果可用)而受到影响。 在其他情况下,它纯粹是内部的。

limit

integer

将返回的最大响应数

numResults

integer

响应中的结果数。

offset

integer

完整结果集中返回的 Results 的起始偏移量。

query

string

用于生成这些搜索结果的查询参数。

queryTime

integer

解析查询所用的时间(以毫秒为单位)。

queryType

QueryType

返回的查询类型:NEARBY 或 NON_NEAR。

totalResults

integer

找到的结果总数。