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

Weather - Get Daily Historical Actuals

用于获取气候学数据,例如过去每天实际观测到的温度、降水量、降雪量和积雪深度。

API Get Daily Historical Actuals 是一个 HTTP GET 请求,用于返回给定坐标位置当天的气候数据,例如每日实际观测到的温度、降水量、降雪量、降雪深度和冷却/加热度日信息。 在单个 API 请求中,将请求指定日期范围(最多 31 天)的数据。 通常,历史数据可能可以追溯到过去 5 到 40 多年,具体取决于位置。

GET https://atlas.microsoft.com/weather/historical/actuals/daily/json?api-version=1.1&query={query}&startDate={startDate}&endDate={endDate}
GET https://atlas.microsoft.com/weather/historical/actuals/daily/json?api-version=1.1&query={query}&startDate={startDate}&endDate={endDate}&unit={unit}

URI 参数

名称 必需 类型 说明
format
path True

JsonFormat

响应的所需格式。 仅支持 json 格式。

api-version
query True

string

Azure Maps API 的版本号。

endDate
query True

string

date

ISO 8601 格式的结束日期,例如 2019-10-28。 支持的日期范围为 1 到 31 个日历天,因此请务必指定 startDate 和 endDate, (最多不超过 31 天,即:startDate=2012-01-01&endDate=2012-01-31) 。

query
query True

number[]

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

startDate
query True

string

date

ISO 8601 格式的开始日期,例如 2019-10-27。 支持的日期范围为 1 到 31 个日历天,因此请务必指定 startDate 和 endDate, (最多不超过 31 天,即:startDate=2012-01-01&endDate=2012-01-31) 。

unit
query

WeatherDataUnit

指定以公制单位或英制单位返回数据。 默认值为 metric。

请求头

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

string

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

响应

名称 类型 说明
200 OK

DailyHistoricalActualsResult

确定

Other Status Codes

ErrorResponse

发生了意外错误。

安全性

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 允许针对多个用例对应用程序进行基于配置的设置。

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 Create Azure Maps 帐户时预配的共享密钥。

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

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

Type: apiKey
In: query

SAS Token

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

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

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

Type: apiKey
In: header

示例

Successful Daily Historical Actuals Request

Sample Request

GET https://atlas.microsoft.com/weather/historical/actuals/daily/json?api-version=1.1&query=40.78,-77.89&startDate=2012-01-20&endDate=2012-01-22

Sample Response

{
  "results": [
    {
      "date": "2012-01-20T00:00:00-04:00",
      "temperature": {
        "maximum": {
          "value": -6.1,
          "unit": "C",
          "unitType": 17
        },
        "minimum": {
          "value": -11.1,
          "unit": "C",
          "unitType": 17
        },
        "average": {
          "value": -8.6,
          "unit": "C",
          "unitType": 17
        }
      },
      "degreeDaySummary": {
        "heating": {
          "value": 27,
          "unit": "C",
          "unitType": 17
        },
        "cooling": {
          "value": 0,
          "unit": "C",
          "unitType": 17
        }
      },
      "precipitation": {
        "value": 10.9,
        "unit": "mm",
        "unitType": 3
      },
      "snowfall": {
        "value": 12.19,
        "unit": "cm",
        "unitType": 4
      },
      "snowDepth": {
        "value": 15.2,
        "unit": "cm",
        "unitType": 4
      }
    },
    {
      "date": "2012-01-21T00:00:00-04:00",
      "temperature": {
        "maximum": {
          "value": -1.7,
          "unit": "C",
          "unitType": 17
        },
        "minimum": {
          "value": -8.9,
          "unit": "C",
          "unitType": 17
        },
        "average": {
          "value": -5.3,
          "unit": "C",
          "unitType": 17
        }
      },
      "degreeDaySummary": {
        "heating": {
          "value": 24,
          "unit": "C",
          "unitType": 17
        },
        "cooling": {
          "value": 0,
          "unit": "C",
          "unitType": 17
        }
      },
      "precipitation": {
        "value": 0,
        "unit": "mm",
        "unitType": 3
      },
      "snowfall": {
        "value": 0.51,
        "unit": "cm",
        "unitType": 4
      },
      "snowDepth": {
        "value": 12.7,
        "unit": "cm",
        "unitType": 4
      }
    },
    {
      "date": "2012-01-22T00:00:00-04:00",
      "temperature": {
        "maximum": {
          "value": 0,
          "unit": "C",
          "unitType": 17
        },
        "minimum": {
          "value": -7.2,
          "unit": "C",
          "unitType": 17
        },
        "average": {
          "value": -3.6,
          "unit": "C",
          "unitType": 17
        }
      },
      "degreeDaySummary": {
        "heating": {
          "value": 22,
          "unit": "C",
          "unitType": 17
        },
        "cooling": {
          "value": 0,
          "unit": "C",
          "unitType": 17
        }
      },
      "precipitation": {
        "value": 0,
        "unit": "mm",
        "unitType": 3
      },
      "snowfall": {
        "value": 0,
        "unit": "cm",
        "unitType": 4
      },
      "snowDepth": {
        "value": 10.2,
        "unit": "cm",
        "unitType": 4
      }
    }
  ]
}

定义

名称 说明
DailyHistoricalActuals
DailyHistoricalActualsResult
DegreeDaySummary
ErrorAdditionalInfo

资源管理错误附加信息。

ErrorDetail

错误详细信息。

ErrorResponse

错误响应

JsonFormat

响应的所需格式。 仅支持 json 格式。

UnitType

与显示的单位类型关联的数值 ID 值。 可用于单元翻译。 有关详细信息,请参阅Azure Maps中的天气服务

WeatherDataUnit

指定以公制单位或英制单位返回数据。 默认值为 metric。

WeatherUnit

与天气相关的给定单位的特定值。

WeatherUnitMaxMinAvg

返回的温度值。

DailyHistoricalActuals

名称 类型 说明
date

string

以 ISO 8601 格式显示的当前观察值的日期和时间,例如 2019-10-27T19:39:57-08:00。

degreeDaySummary

DegreeDaySummary

供热或冷却度日信息的摘要。 度日是衡量一个位置有多冷或多暖的度量值。 一度日将平均 (某一地点记录的户外高温和低) 平均温度与标准温度 65 度 F/18 摄氏度进行比较。

precipitation

WeatherUnit

降水量 (下降的液体等效) 。

snowDepth

WeatherUnit

雪深度。

snowfall

WeatherUnit

降雪量。

temperature

WeatherUnitMaxMinAvg

温度值。

DailyHistoricalActualsResult

名称 类型 说明
nextLink

string

是指向返回的功能的下一页的链接。 如果是最后一页,则不使用此字段。

results

DailyHistoricalActuals[]

每个请求日期的历史实际值。

DegreeDaySummary

名称 类型 说明
cooling

WeatherUnit

平均气温高于 65 F/18 摄氏度的度数。

heating

WeatherUnit

平均气温低于 65 F/18 摄氏度的度数。

ErrorAdditionalInfo

资源管理错误附加信息。

名称 类型 说明
info

object

其他信息。

type

string

其他信息类型。

ErrorDetail

错误详细信息。

名称 类型 说明
additionalInfo

ErrorAdditionalInfo[]

错误附加信息。

code

string

错误代码。

details

ErrorDetail[]

错误详细信息。

message

string

错误消息。

target

string

错误目标。

ErrorResponse

错误响应

名称 类型 说明
error

ErrorDetail

错误对象。

JsonFormat

响应的所需格式。 仅支持 json 格式。

名称 类型 说明
json

string

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

UnitType

与显示的单位类型关联的数值 ID 值。 可用于单元翻译。 有关详细信息,请参阅Azure Maps中的天气服务

名称 类型 说明
0

Integer

1

Integer

10

Integer

11

Integer

12

Integer

13

Integer

14

Integer

15

Integer

16

Integer

17

Integer

18

Integer

19

Integer

2

Integer

20

Integer

21

Integer

22

Integer

3

Integer

31

Integer

4

Integer

5

Integer

6

Integer

7

Integer

8

Integer

9

Integer

WeatherDataUnit

指定以公制单位或英制单位返回数据。 默认值为 metric。

名称 类型 说明
imperial

string

以英制单位返回数据。 英制的一些示例单位为华氏度和英里。

metric

string

以指标单位返回数据。 公制的一些示例单位为摄氏度和公里。

WeatherUnit

与天气相关的给定单位的特定值。

名称 类型 说明
unit

string

返回值的单位类型。

unitType

UnitType

与显示的单位类型关联的数值 ID 值。 可用于单元翻译。 有关详细信息,请参阅Azure Maps中的天气服务

value

number

舍入值。

WeatherUnitMaxMinAvg

返回的温度值。

名称 类型 说明
average

WeatherUnit

时间段的平均温度。

maximum

WeatherUnit

时间段的最高温度。

minimum

WeatherUnit

时间段的最低温度。