你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Weather - Get Daily Forecast
用于获取未来 1、5、10、15、25 或 45 天的每日详细天气预报。
API Get Daily Forecast
是一个 HTTP GET
请求,它返回给定坐标位置未来 1 天、5 天、10 天、15 天、25 天或 45 天的详细天气预报,例如温度和风力。 响应包括温度、风速、降水量、空气质量和 UV 指数等详细信息。 有关详细信息,请参阅 请求每日天气预报数据。
如果使用 Gen1 S0 定价层,可以请求未来 1 天、5 天、10 天和 15 天的每日预测。 如果使用 Gen1 S1 或 Gen2 定价层,还可以请求未来 25 天和 45 天的每日预测。
GET https://atlas.microsoft.com/weather/forecast/daily/json?api-version=1.1&query={query}
GET https://atlas.microsoft.com/weather/forecast/daily/json?api-version=1.1&query={query}&unit={unit}&duration={duration}&language={language}
URI 参数
名称 | 在 | 必需 | 类型 | 说明 |
---|---|---|---|---|
format
|
path | True |
响应的所需格式。 仅支持 |
|
api-version
|
query | True |
string |
Azure Maps API 的版本号。 |
query
|
query | True |
number[] |
指定为逗号分隔字符串的适用查询,该字符串由纬度后跟经度组成,例如“47.641268,-122.125679”。 |
duration
|
query |
integer |
指定返回每日预测响应的天数。 可用值为
|
|
language
|
query |
string |
返回搜索结果时应采用的语言。 应是受支持的 IETF 语言标记之一,不区分大小写。 当指定语言的数据不适用于特定字段时,将使用默认语言。 有关详细信息,请参阅 支持的语言 。 |
|
unit
|
query |
指定以公制单位或英制单位返回数据。 默认值为 metric。 |
请求头
名称 | 必需 | 类型 | 说明 |
---|---|---|---|
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 令牌可用于允许应用程序以比共享密钥更安全的方式控制访问。
对于公开的应用程序,我们建议在 Map 帐户资源 上配置允许的来源的特定列表,以限制呈现滥用,并定期续订 SAS 令牌。
类型:
apiKey
在:
header
示例
Successfully retrieve detailed daily weather forecast for a given coordinate location
示例请求
GET https://atlas.microsoft.com/weather/forecast/daily/json?api-version=1.1&query=62.6490341,30.0734812&duration=5
示例响应
{
"summary": {
"startDate": "2019-11-17T09:00:00-08:00",
"endDate": "2019-11-17T15:00:00-08:00",
"severity": 5,
"phrase": "Rain Sunday evening",
"category": "rain"
},
"forecasts": [
{
"date": "2019-11-13T21:00:00-08:00",
"temperature": {
"minimum": {
"value": 0.8,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 5.3,
"unit": "C",
"unitType": 17
}
},
"realFeelTemperature": {
"minimum": {
"value": -3.4,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 1.3,
"unit": "C",
"unitType": 17
}
},
"realFeelTemperatureShade": {
"minimum": {
"value": -3.4,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 1.6,
"unit": "C",
"unitType": 17
}
},
"hoursOfSun": 1.1,
"degreeDaySummary": {
"heating": {
"value": 15,
"unit": "C",
"unitType": 17
},
"cooling": {
"value": 0,
"unit": "C",
"unitType": 17
}
},
"airAndPollen": [
{
"name": "AirQuality",
"value": 0,
"category": "Good",
"categoryValue": 1,
"type": "Ozone"
},
{
"name": "Grass",
"value": 0,
"category": "Low",
"categoryValue": 1
},
{
"name": "Mold",
"value": 0,
"category": "Low",
"categoryValue": 1
},
{
"name": "Ragweed",
"value": 0,
"category": "Low",
"categoryValue": 1
},
{
"name": "Tree",
"value": 0,
"category": "Low",
"categoryValue": 1
},
{
"name": "UVIndex",
"value": 0,
"category": "Low",
"categoryValue": 1
}
],
"day": {
"iconCode": 12,
"iconPhrase": "Showers",
"hasPrecipitation": true,
"precipitationType": "Rain",
"precipitationIntensity": "Light",
"shortPhrase": "Cloudy with a few showers",
"longPhrase": "Cloudy with a couple of showers, mainly later",
"precipitationProbability": 75,
"thunderstormProbability": 20,
"rainProbability": 75,
"snowProbability": 40,
"iceProbability": 0,
"wind": {
"direction": {
"degrees": 160,
"localizedDescription": "SSE"
},
"speed": {
"value": 16.7,
"unit": "km/h",
"unitType": 7
}
},
"windGust": {
"direction": {
"degrees": 160,
"localizedDescription": "SSE"
},
"speed": {
"value": 48.2,
"unit": "km/h",
"unitType": 7
}
},
"totalLiquid": {
"value": 6.1,
"unit": "mm",
"unitType": 3
},
"rain": {
"value": 6.1,
"unit": "mm",
"unitType": 3
},
"snow": {
"value": 0,
"unit": "cm",
"unitType": 4
},
"ice": {
"value": 0,
"unit": "mm",
"unitType": 3
},
"hoursOfPrecipitation": 3.5,
"hoursOfRain": 3.5,
"hoursOfSnow": 0,
"hoursOfIce": 0,
"cloudCover": 100
},
"night": {
"iconCode": 12,
"iconPhrase": "Showers",
"hasPrecipitation": true,
"precipitationType": "Rain",
"precipitationIntensity": "Light",
"shortPhrase": "Breezy early; cloudy",
"longPhrase": "Breezy this evening; otherwise, low clouds",
"precipitationProbability": 65,
"thunderstormProbability": 0,
"rainProbability": 64,
"snowProbability": 40,
"iceProbability": 0,
"wind": {
"direction": {
"degrees": 181,
"localizedDescription": "S"
},
"speed": {
"value": 20.4,
"unit": "km/h",
"unitType": 7
}
},
"windGust": {
"direction": {
"degrees": 170,
"localizedDescription": "S"
},
"speed": {
"value": 42.6,
"unit": "km/h",
"unitType": 7
}
},
"totalLiquid": {
"value": 4,
"unit": "mm",
"unitType": 3
},
"rain": {
"value": 4,
"unit": "mm",
"unitType": 3
},
"snow": {
"value": 0,
"unit": "cm",
"unitType": 4
},
"ice": {
"value": 0,
"unit": "mm",
"unitType": 3
},
"hoursOfPrecipitation": 2.5,
"hoursOfRain": 2.5,
"hoursOfSnow": 0,
"hoursOfIce": 0,
"cloudCover": 98
},
"sources": [
"AccuWeather"
]
}
]
}
定义
名称 | 说明 |
---|---|
Air |
|
Daily |
|
Daily |
|
Daily |
所请求时间段的主要条件的摘要。 请注意,摘要只能涵盖时间段的一部分。 |
Day |
|
Degree |
|
Error |
资源管理错误附加信息。 |
Error |
错误详细信息。 |
Error |
错误响应 |
Icon |
表示显示 的图像的 |
Json |
响应的所需格式。 仅支持 |
Local |
本地天气数据提供程序信息。 |
Precipitation |
指定 (“雨”“雪”“冰”或“混合”) 的降水类型。 如果 dbz 为零,则响应中不存在 precipitationType。 |
Unit |
与显示的单位类型关联的数值 ID 值。 可用于单元翻译。 有关详细信息,请参阅 Azure Maps 中的天气服务 。 |
Weather |
指定以公制单位或英制单位返回数据。 默认值为 metric。 |
Weather |
与天气相关的给定单位的特定值。 |
Weather |
返回的温度值。 |
Wind |
返回的风力详细信息,包括速度和方向。 |
Wind |
风向 |
AirAndPollen
名称 | 类型 | 说明 |
---|---|---|
category |
string |
空气质量或污染类型的类别。 例如,低、高、良好、中等、不正常、危险。 |
categoryValue |
integer |
与空气质量或污染类别关联的值。 这些值的范围为 1 到 6。 1 表示良好的条件,6 表示危险条件。 |
name |
string |
花粉或污染物的名称。 例如,草、模具、除草、空气质量、树木和紫外线指数。 |
type |
string |
仅针对空气质量而存在。 示例包括臭氧和颗粒污染。 |
value |
integer |
上述给定类型的值。 与模具、草、除草和树相关的值以每立方米部分为单位。 空气质量和紫外线都是指数,因此它们是无单位的。 |
DailyForecast
名称 | 类型 | 说明 |
---|---|---|
airAndPollen |
空气质量 |
|
date |
string |
以 ISO 8601 格式显示的当前观察值的日期和时间,例如 2019-10-27T19:39:57-08:00。 |
day |
日预测详细信息 |
|
degreeDaySummary |
供热度日或冷却度日平均温度信息的摘要 |
|
hoursOfSun |
number |
太阳的小时数。 |
night |
夜间预测详细信息 |
|
realFeelTemperature |
返回的 RealFeel™ 温度。 |
|
realFeelTemperatureShade |
返回的 RealFeel™ 温度。 描述阴影下温度的真实感觉。 |
|
sources |
string[] |
预测数据的源 () 。 |
temperature |
当天的温度值。 |
DailyForecastResult
名称 | 类型 | 说明 |
---|---|---|
forecasts |
预测每个请求日期的数据。 |
|
summary |
所请求时间段的主要条件的摘要。 请注意,摘要只能涵盖时间段的一部分。 |
DailyForecastSummary
所请求时间段的主要条件的摘要。 请注意,摘要只能涵盖时间段的一部分。
名称 | 类型 | 说明 |
---|---|---|
category |
string |
一个或两个单词 () 来汇总短语。 |
endDate |
string |
摘要期结束的日期和时间,以 ISO 8601 格式显示,例如 2019-10-27T19:39:57-08:00。 |
phrase |
string |
每日预测的摘要短语。 以指定语言显示。 |
severity |
integer |
severity |
startDate |
string |
摘要生效的日期和时间,以 ISO 8601 格式显示,例如 2019-10-27T19:39:57-08:00。 |
DayOrNight
名称 | 类型 | 说明 |
---|---|---|
cloudCover |
integer |
表示云覆盖率的百分比。 |
hasPrecipitation |
boolean |
指示是否存在降水量。 True 表示存在降水,false 表示不存在降水。 |
hoursOfIce |
number |
冰的小时数。 |
hoursOfPrecipitation |
number |
降水小时数 |
hoursOfRain |
number |
下雨的时间。 |
hoursOfSnow |
number |
下雪的时间。 |
ice |
Ice |
|
iceProbability |
integer |
表示结冰概率的百分比。 例如,“30”。 |
iconCode |
表示显示 的图像的 |
|
iconPhrase |
string |
图标的短语说明。 以指定语言显示。 例如,“Sunny”。 |
localSource |
本地天气数据提供程序信息。 |
|
longPhrase |
string |
使用指定语言预测的短语说明。 Azure Maps 尝试将此短语的长度保持在 100 个字符以内,但某些语言/天气事件可能会导致短语长度延长,超过 100 个字符。 |
precipitationIntensity |
string |
强度的说明。 |
precipitationProbability |
integer |
表示降水概率的百分比。 例如,“20”。 |
precipitationType |
指定 (“雨”“雪”“冰”或“混合”) 的降水类型。 如果 dbz 为零,则响应中不存在 precipitationType。 |
|
rain |
雨 |
|
rainProbability |
integer |
表示下雨概率的百分比。 例如,“40”。 |
shortPhrase |
string |
使用指定语言预测的短语说明。 Azure Maps 尝试将此短语的长度保持在 30 个字符以内,但某些语言/天气事件可能会导致短语长度更长,超过 30 个字符。 |
snow |
雪 |
|
snowProbability |
integer |
表示降雪概率的百分比。 例如,“30”。 |
thunderstormProbability |
integer |
表示雷暴概率的百分比。 例如,“80”。 |
totalLiquid |
预报期间降水量的总液体量。 |
|
wind |
返回的风力详细信息,包括速度和方向。 |
|
windGust |
阵风。 阵风是一个突然的,短暂的风速增加。 |
DegreeDaySummary
名称 | 类型 | 说明 |
---|---|---|
cooling |
平均气温高于 65 F/18 摄氏度的度数。 |
|
heating |
平均气温低于 65 F/18 摄氏度的度数。 |
ErrorAdditionalInfo
资源管理错误附加信息。
名称 | 类型 | 说明 |
---|---|---|
info |
object |
其他信息。 |
type |
string |
其他信息类型。 |
ErrorDetail
错误详细信息。
名称 | 类型 | 说明 |
---|---|---|
additionalInfo |
错误附加信息。 |
|
code |
string |
错误代码。 |
details |
错误详细信息。 |
|
message |
string |
错误消息。 |
target |
string |
错误目标。 |
ErrorResponse
错误响应
名称 | 类型 | 说明 |
---|---|---|
error |
错误对象。 |
IconCode
表示显示 的图像的 iconPhrase
数值。 有关详细信息,请参阅 Azure Maps 中的天气服务 。
名称 | 类型 | 说明 |
---|---|---|
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 |
|
23 |
Integer |
|
24 |
Integer |
|
25 |
Integer |
|
26 |
Integer |
|
27 |
Integer |
|
28 |
Integer |
|
29 |
Integer |
|
3 |
Integer |
|
30 |
Integer |
|
31 |
Integer |
|
32 |
Integer |
|
33 |
Integer |
|
34 |
Integer |
|
35 |
Integer |
|
36 |
Integer |
|
37 |
Integer |
|
38 |
Integer |
|
39 |
Integer |
|
4 |
Integer |
|
40 |
Integer |
|
41 |
Integer |
|
42 |
Integer |
|
43 |
Integer |
|
44 |
Integer |
|
5 |
Integer |
|
6 |
Integer |
|
7 |
Integer |
|
8 |
Integer |
|
9 |
Integer |
JsonFormat
响应的所需格式。 仅支持 json
格式。
名称 | 类型 | 说明 |
---|---|---|
json |
string |
LocalSource
本地天气数据提供程序信息。
名称 | 类型 | 说明 |
---|---|---|
id |
integer |
对本地数据提供程序唯一的数字标识符。 |
name |
string |
本地数据提供程序的名称。 名称以 URL 中的语言代码指定的语言显示(如果可用)。 否则,名称以英语或提供名称时使用的语言显示。 |
weatherCode |
string |
本地数据提供程序提供的天气代码。 此天气代码允许将预测与本地数据提供程序提供的图标(而不是 Azure Maps 图标)匹配。 |
PrecipitationType
指定 (“雨”“雪”“冰”或“混合”) 的降水类型。 如果 dbz 为零,则响应中不存在 precipitationType。
名称 | 类型 | 说明 |
---|---|---|
Ice |
string |
Ice |
Mix |
string |
组合 |
Rain |
string |
雨 |
Snow |
string |
雪 |
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 |
与显示的单位类型关联的数值 ID 值。 可用于单元翻译。 有关详细信息,请参阅 Azure Maps 中的天气服务 。 |
|
value |
number |
舍入值。 |
WeatherUnitRange
返回的温度值。
名称 | 类型 | 说明 |
---|---|---|
maximum |
时间段内的最高温度 |
|
minimum |
时间段的最低温度。 |
WindDetails
返回的风力详细信息,包括速度和方向。
名称 | 类型 | 说明 |
---|---|---|
direction |
风向 |
|
speed |
指定单位的风速。 |
WindDirection
风向
名称 | 类型 | 说明 |
---|---|---|
degrees |
integer |
风向以方位度为单位,从真正的北开始,沿顺时针方向继续。 北为0度,东为90度,南为180度,西为270度。 可能的值 0-359。 |
localizedDescription |
string |
指定语言的方向缩写。 |