你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Geolocation - Get IP To Location
使用 获取给定 IP 地址的 ISO 国家/地区代码
Get IP To Location
API 是一个 HTTP GET
请求,给定一个 IP 地址,返回该 IP 地址所在的 ISO 国家/地区代码。 开发人员可以使用此信息根据查看应用程序的地理位置来阻止或更改某些内容。
GET https://atlas.microsoft.com/geolocation/ip/json?api-version=1.0&ip={ip}
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
format
|
path | True |
响应的所需格式。 仅支持 |
|
api-version
|
query | True |
string |
Azure Maps API 的版本号。 |
ip
|
query | True |
string |
IP 地址。 允许使用 IPv4 和 IPv6。 |
请求头
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
x-ms-client-id |
string |
指定要与 Microsoft Entra ID 安全模型一起使用的帐户。 它表示 Azure Maps 帐户的唯一 ID,可以从 Azure Maps 管理平面帐户 API 检索。 若要在 Azure Maps 中使用 Microsoft Entra ID 安全性,请参阅以下 文章 以获取指导。 |
响应
名称 | 类型 | 说明 |
---|---|---|
200 OK |
确定 |
|
Other Status Codes |
发生了意外错误。 |
安全性
AADToken
这些是 Microsoft Entra OAuth 2.0 流。 与 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标识平台概述。
类型:
oauth2
流向:
implicit
授权 URL:
https://login.microsoftonline.com/common/oauth2/authorize
作用域
名称 | 说明 |
---|---|
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,以便安全地存储密钥。
类型:
apiKey
在:
query
SAS Token
这是通过 Azure 门户、PowerShell、CLI、Azure SDK 或 REST API 通过 Azure 管理平面通过 Azure Maps 资源 上的列出 SAS 操作创建的共享访问签名令牌。
使用此令牌,任何应用程序都有权使用 Azure 基于角色的访问控制进行访问,并精细控制特定令牌的过期、速率和区域 () 。 换句话说,SAS 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。
对于公开的应用程序,我们建议在 映射帐户资源 上配置允许的来源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。
类型:
apiKey
在:
header
示例
Successfully retrieve country code from IP address
示例请求
GET https://atlas.microsoft.com/geolocation/ip/json?api-version=1.0&ip=2001:4898:80e8:b::189
示例响应
{
"countryRegion": {
"isoCode": "US"
},
"ipAddress": "2001:4898:80e8:b::189"
}
定义
名称 | 说明 |
---|---|
Country |
包含国家/地区信息的对象。 |
Error |
资源管理错误附加信息。 |
Error |
错误详细信息。 |
Error |
错误响应 |
Ip |
此对象是从成功调用 IP 地址到国家/地区 API 返回的 |
Json |
响应的所需格式。 仅支持 |
CountryRegion
包含国家/地区信息的对象。
名称 | 类型 | 说明 |
---|---|---|
isoCode |
string |
IP 地址的 2 个字符代码 (国家或地区的 ISO 3166-1) 。 请注意,为特殊目的保留范围内的 IP 地址将为国家/地区返回 Null。 |
ErrorAdditionalInfo
资源管理错误附加信息。
名称 | 类型 | 说明 |
---|---|---|
info |
object |
其他信息。 |
type |
string |
其他信息类型。 |
ErrorDetail
错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
additionalInfo |
错误附加信息。 |
|
code |
string |
错误代码。 |
details |
错误详细信息。 |
|
message |
string |
错误消息。 |
target |
string |
错误目标。 |
ErrorResponse
错误响应
名称 | 类型 | 说明 |
---|---|---|
error |
错误对象。 |
IpAddressToLocationResult
此对象是从成功调用 IP 地址到国家/地区 API 返回的
名称 | 类型 | 说明 |
---|---|---|
countryRegion |
包含国家/地区信息的对象。 |
|
ipAddress |
string |
请求的 IP 地址。 |
JsonFormat
响应的所需格式。 仅支持 json
格式。
名称 | 类型 | 说明 |
---|---|---|
json |
string |