Weather - Get Current Conditions
使用取得目前的天氣狀況。
Get Current Conditions
API 是 HTTP GET
要求,會傳回特定座標位置的詳細目前天氣狀況,例如降水、溫度和風力。 此外,也可以擷取過去 6 或 24 小時內特定位置的觀察。 回應傳回的基本資訊包括觀察日期和時間、天氣狀況的簡短描述、天氣圖示、降水指標旗標和溫度等詳細數據。 也會傳回其他詳細數據,例如 RealFeel™ Temperature 和 UV 索引。 如需詳細資訊,請參閱 要求即時天氣數據
GET https://atlas.microsoft.com/weather/currentConditions/json?api-version=1.1&query={query}
GET https://atlas.microsoft.com/weather/currentConditions/json?api-version=1.1&query={query}&unit={unit}&details={details}&duration={duration}&language={language}
URI 參數
名稱 | 位於 | 必要 | 類型 | Description |
---|---|---|---|---|
format
|
path | True |
回應所需的格式。 僅支援 |
|
api-version
|
query | True |
string |
Azure 地圖服務 API 的版本號碼。 |
query
|
query | True |
number[] |
指定為逗號分隔字串的適用查詢,由緯度所組成,後面接著經度,例如 “47.641268,-122.125679”。 天氣資訊通常適用於陸地上的位置、被陸地包圍的水體,以及大約50海裡海岸線的海洋區域。 |
details
|
query |
string |
傳回目前條件的完整詳細數據。 可用的值為
|
|
duration
|
query |
integer |
傳回天氣條件的時間範圍。 根據預設,會傳回最新的天氣狀況。 預設值為 0。 支援的值為:
|
|
language
|
query |
string |
應該傳回搜尋結果的語言。 應該是其中一個支援的 IETF 語言標記,不區分大小寫。 當特定欄位無法使用指定語言的數據時,會使用預設語言。 如需詳細資訊,請參閱 支援的語言。 |
|
unit
|
query |
指定以度量單位或英制單位傳回數據。 預設值為計量。 |
要求標頭
名稱 | 必要 | 類型 | Description |
---|---|---|---|
x-ms-client-id |
string |
指定要與 Microsoft Entra ID 安全性模型搭配使用的帳戶。 它代表 Azure 地圖服務帳戶的唯一標識碼,而且可以從 Azure 地圖服務管理平面帳戶 API 擷取。 若要在 Azure 地圖服務中使用 Microsoft Entra ID 安全性,請參閱下列 文章 以取得指引。 |
回應
名稱 | 類型 | Description |
---|---|---|
200 OK |
還行 |
|
Other Status Codes |
發生未預期的錯誤。 |
安全性
AADToken
這些是 Entra OAuth 2.0 Flow
若要實作案例,建議您檢視
筆記
- 此安全性定義 需要 使用
x-ms-client-id
標頭來指出應用程式要求存取的 Azure 地圖服務資源。 這可以從 地圖管理 API 取得。
Authorization URL
專屬於 Azure 公用雲端實例。 主權雲端具有唯一的授權 URL,Microsoft Entra ID 設定。
* 透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 Azure 管理 平面設定 Azure 角色型存取控制。
* Azure 地圖服務 Web SDK 的使用方式允許針對多個使用案例設定應用程式。
- 如需Microsoft身分識別平臺的詳細資訊,請參閱 Microsoft 身分識別平臺概觀。
類型:
oauth2
Flow:
implicit
授權 URL:
https://login.microsoftonline.com/common/oauth2/authorize
範圍
名稱 | Description |
---|---|
https://atlas.microsoft.com/.default | https://atlas.microsoft.com/.default |
subscription-key
這是當您 在 Azure 入口網站或使用 PowerShell、CLI、Azure SDK 或 REST API 建立 Azure 地圖服務帳戶時所佈建的共用密鑰。
使用此金鑰,任何應用程式都可以存取所有 REST API。 換句話說,此金鑰可用來做為帳戶中核發的主要密鑰。
針對公開的應用程式,我們建議使用 機密用戶端應用程式 方法來存取 Azure 地圖服務 REST API,以便安全地儲存您的密鑰。
類型:
apiKey
位於:
query
SAS Token
這是透過 Azure 入口網站、PowerShell、CLI、Azure SDK 或 REST API,從 azure 地圖服務資源
使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並更精細地控制特定令牌的到期、速率和區域。 換句話說,SAS 令牌可用來讓應用程式以比共用密鑰更安全的方式控制存取。
對於公開的應用程式,我們建議在 對應帳戶資源上設定允許的來源特定清單, 以限制轉譯濫用,並定期更新 SAS 令牌。
類型:
apiKey
位於:
header
範例
Successfully retrieve detailed current weather conditions for a given coordinate location
範例要求
GET https://atlas.microsoft.com/weather/currentConditions/json?api-version=1.1&query=47.641268,-122.125679
範例回覆
{
"results": [
{
"dateTime": "2019-11-14T15:08:00-08:00",
"phrase": "Cloudy",
"iconCode": 7,
"hasPrecipitation": false,
"isDayTime": true,
"temperature": {
"value": 13.7,
"unit": "C",
"unitType": 17
},
"realFeelTemperature": {
"value": 13.6,
"unit": "C",
"unitType": 17
},
"realFeelTemperatureShade": {
"value": 13.6,
"unit": "C",
"unitType": 17
},
"relativeHumidity": 75,
"dewPoint": {
"value": 9.2,
"unit": "C",
"unitType": 17
},
"wind": {
"direction": {
"degrees": 315,
"localizedDescription": "NW"
},
"speed": {
"value": 3.6,
"unit": "km/h",
"unitType": 7
}
},
"windGust": {
"speed": {
"value": 4.9,
"unit": "km/h",
"unitType": 7
}
},
"uvIndex": 0,
"uvIndexPhrase": "Low",
"visibility": {
"value": 8,
"unit": "km",
"unitType": 6
},
"obstructionsToVisibility": "",
"cloudCover": 95,
"ceiling": {
"value": 4359,
"unit": "m",
"unitType": 5
},
"pressure": {
"value": 1014.9,
"unit": "mb",
"unitType": 14
},
"pressureTendency": {
"localizedDescription": "Steady",
"code": "S"
},
"pastTwentyFourHourTemperatureDeparture": {
"value": 1.8,
"unit": "C",
"unitType": 17
},
"apparentTemperature": {
"value": 16.1,
"unit": "C",
"unitType": 17
},
"windChillTemperature": {
"value": 13.9,
"unit": "C",
"unitType": 17
},
"wetBulbTemperature": {
"value": 11.4,
"unit": "C",
"unitType": 17
},
"precipitationSummary": {
"pastHour": {
"value": 0.5,
"unit": "mm",
"unitType": 3
},
"pastThreeHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
},
"pastSixHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
},
"pastNineHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
},
"pastTwelveHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
},
"pastEighteenHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
},
"pastTwentyFourHours": {
"value": 0.8,
"unit": "mm",
"unitType": 3
}
},
"temperatureSummary": {
"pastSixHours": {
"minimum": {
"value": 8.3,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 13.7,
"unit": "C",
"unitType": 17
}
},
"pastTwelveHours": {
"minimum": {
"value": 5.9,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 13.7,
"unit": "C",
"unitType": 17
}
},
"pastTwentyFourHours": {
"minimum": {
"value": 5.9,
"unit": "C",
"unitType": 17
},
"maximum": {
"value": 13.7,
"unit": "C",
"unitType": 17
}
}
}
}
]
}
定義
名稱 | Description |
---|---|
Current |
|
Current |
|
Error |
資源管理錯誤其他資訊。 |
Error |
錯誤詳細數據。 |
Error |
錯誤回應 |
Icon |
數值,表示顯示 |
Json |
回應所需的格式。 僅支援 |
Past |
過去數小時的溫度波動摘要。 |
Precipitation |
|
Pressure |
|
Temperature |
|
Unit |
與所顯示的單位類型相關聯的數值標識碼。 可用於單元翻譯。 如需詳細資訊,請參閱 Azure 地圖服務 中的 |
Weather |
指定以度量單位或英制單位傳回數據。 預設值為計量。 |
Weather |
與天氣相關的指定單位的特定值。 |
Wind |
正在傳回的風詳細數據,包括速度和方向。 |
Wind |
風向 |
CurrentConditions
名稱 | 類型 | Description |
---|---|---|
apparentTemperature |
由指定單位的空氣溫度、相對濕度和風速的組合所造成戶外溫度。 |
|
ceiling |
指定單位中的雲端上限。 上限是最低雲基底高度的測量。 |
|
cloudCover |
integer |
代表雲端涵蓋的百分比。 |
dateTime |
string |
以 ISO 8601 格式顯示的目前觀察日期和時間,例如 2019-10-27T19:39:57-08:00。 |
dewPoint |
指定單位中的露點溫度。 露點溫度是空氣必須冷卻到的溫度,才能達到飽和度。 |
|
hasPrecipitation |
boolean |
表示降水的存在或不存在。 True 表示降水的存在,false 表示沒有降水。 |
iconCode |
數值,表示顯示 |
|
isDayTime |
boolean |
表示一天中的時間。 True 表示 'day',',false 表示 'night。 |
obstructionsToVisibility |
string |
可見度有限的原因。 可能的值:
|
pastTwentyFourHourTemperatureDeparture |
從指定單位24小時前觀察到的溫度出發。 |
|
phrase |
string |
目前天氣條件的片語描述。 以指定的語言顯示。 |
precipitationSummary |
過去24小時內的降水量摘要。 |
|
pressure |
指定單位中的大氣壓力。 |
|
pressureTendency |
大氣壓力變化。 |
|
realFeelTemperature |
正在傳回 RealFeel™ Temperature。 |
|
realFeelTemperatureShade |
正在傳回 RealFeel™ Temperature。 描述陰影中溫度的真實感覺。 |
|
relativeHumidity |
integer |
相對濕度是空氣中存在的水蒸汽量,以相同溫度飽和所需的量百分比表示。 |
temperature |
正在傳回的溫度。 |
|
temperatureSummary |
過去 6、12 和 24 小時內溫度波動的摘要。 |
|
uvIndex |
integer |
測量太陽紫外線輻射的強度。 支援的值為:
|
uvIndexPhrase |
string |
與 |
visibility |
指定單位中的可見度。 可以清楚辨識物件或光線的距離量值。 |
|
wetBulbTemperature |
空氣在常壓下蒸發到空氣的溫度可能會冷卻到它,直到達到飽和為止。 |
|
wind |
正在傳回的風詳細數據,包括速度和方向。 |
|
windChillTemperature |
由於風,在暴露的皮膚上感知到空氣溫度。 |
|
windGust |
風陣風。 風陣風是突然的,短暫的風速上升。 |
CurrentConditionsResult
名稱 | 類型 | Description |
---|---|---|
results |
詳細的目前天氣狀況。 |
ErrorAdditionalInfo
資源管理錯誤其他資訊。
名稱 | 類型 | Description |
---|---|---|
info |
object |
其他資訊。 |
type |
string |
其他信息類型。 |
ErrorDetail
錯誤詳細數據。
名稱 | 類型 | Description |
---|---|---|
additionalInfo |
錯誤其他資訊。 |
|
code |
string |
錯誤碼。 |
details |
錯誤詳細數據。 |
|
message |
string |
錯誤訊息。 |
target |
string |
錯誤目標。 |
ErrorResponse
錯誤回應
名稱 | 類型 | Description |
---|---|---|
error |
error 物件。 |
IconCode
數值,表示顯示 iconPhrase
的影像。 如需詳細資訊,請參閱 Azure 地圖服務 中的
名稱 | 類型 | Description |
---|---|---|
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
格式。
名稱 | 類型 | Description |
---|---|---|
json |
string |
PastHoursTemperature
過去數小時的溫度波動摘要。
名稱 | 類型 | Description |
---|---|---|
maximum |
最大 |
|
minimum |
最低 |
PrecipitationSummary
名稱 | 類型 | Description |
---|---|---|
pastEighteenHours |
過去18小時內下降的降水量(相當於液體)。 |
|
pastHour |
過去一小時內下降的降水量(相當於液體)。 |
|
pastNineHours |
過去9小時內下降的降水量(液體對等量)。 |
|
pastSixHours |
在過去六小時內下降的降水量(相當於液體)。 包含計量和帝國值。 |
|
pastThreeHours |
過去三小時內下降的降水量(相當於液體)。 |
|
pastTwelveHours |
過去12小時內下降的降水量(相當於液體)。 |
|
pastTwentyFourHours |
過去24小時內下降的降水量(相當於液體)。 |
PressureTendency
名稱 | 類型 | Description |
---|---|---|
code |
string |
不論語言為何,壓力傾向程序代碼。 其中一個 F=下降,S=穩定,R=Rising。 |
localizedDescription |
string |
指定語言的壓力傾向描述 |
TemperatureSummary
名稱 | 類型 | Description |
---|---|---|
pastSixHours |
過去6小時內溫度波動的摘要。 |
|
pastTwelveHours |
過去12小時內溫度波動的摘要。 |
|
pastTwentyFourHours |
過去24小時內溫度波動的摘要。 |
UnitType
與所顯示的單位類型相關聯的數值標識碼。 可用於單元翻譯。 如需詳細資訊,請參閱 Azure 地圖服務 中的
名稱 | 類型 | Description |
---|---|---|
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
指定以度量單位或英制單位傳回數據。 預設值為計量。
名稱 | 類型 | Description |
---|---|---|
imperial |
string |
以英制單位傳回數據。 帝國系統的一些範例單位是華氏和英里。 |
metric |
string |
以計量單位傳回數據。 計量系統的一些範例單位為攝氏和公里。 |
WeatherUnit
與天氣相關的指定單位的特定值。
名稱 | 類型 | Description |
---|---|---|
unit |
string |
傳回值的單位類型。 |
unitType |
與所顯示的單位類型相關聯的數值標識碼。 可用於單元翻譯。 如需詳細資訊,請參閱 Azure 地圖服務 中的 |
|
value |
number |
四捨五入的值。 |
WindDetails
正在傳回的風詳細數據,包括速度和方向。
名稱 | 類型 | Description |
---|---|---|
direction |
風向 |
|
speed |
指定單位的風速。 |
WindDirection
風向
名稱 | 類型 | Description |
---|---|---|
degrees |
integer |
Azimuth 度的風向,從真實北開始,順時針方向繼續。 北方是0度,東是90度,南是180度,西部是270度。 可能的值 0-359。 |
localizedDescription |
string |
指定語言的方向縮寫。 |