共用方式為


Weather - Get Daily Forecast

用來取得未來 1、5、10、15、25 或 45 天的每日詳細天氣預報。

Get Daily Forecast API 是 HTTP GET 要求,會針對指定的座標位置傳回詳細的天氣預報,例如未來 1、5、10、10、15、25 或 45 天的詳細天氣預報。 回應包括溫度、風力、降水、空氣品質和紫外線指數等詳細數據。 如需詳細資訊,請參閱 要求每日天氣預報數據。

如果您使用 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 參數

名稱 位於 必要 類型 Description
format
path True

JsonFormat

回應所需的格式。 僅支援 json 格式。

api-version
query True

string

Azure 地圖服務 API 的版本號碼。

query
query True

number[]

指定為逗號分隔字串的適用查詢,由緯度所組成,後面接著經度,例如 “47.641268,-122.125679”。

天氣資訊通常適用於陸地上的位置、被陸地包圍的水體,以及大約50海裡海岸線的海洋區域。

duration
query

integer

指定傳回每日預測回應的天數。 可用的值為

  • 1 - 傳回第二天的預測數據。 預設會傳回 。
  • 5 - 傳回未來 5 天的預測數據。
  • 10 - 傳回未來 10 天的預測數據。
  • 25 - 傳回未來 25 天的預測數據。 僅適用於 S1 SKU。
  • 45 - 傳回未來 45 天的預測數據。 僅適用於 S1 SKU。
language
query

string

應該傳回搜尋結果的語言。 應該是其中一個支援的 IETF 語言標記,不區分大小寫。 當特定欄位無法使用指定語言的數據時,會使用預設語言。

如需詳細資訊,請參閱 支援的語言

unit
query

WeatherDataUnit

指定以度量單位或英制單位傳回數據。 預設值為計量。

要求標頭

名稱 必要 類型 Description
x-ms-client-id

string

指定要與 Microsoft Entra ID 安全性模型搭配使用的帳戶。 它代表 Azure 地圖服務帳戶的唯一標識碼,而且可以從 Azure 地圖服務管理平面帳戶 API 擷取。 若要在 Azure 地圖服務中使用 Microsoft Entra ID 安全性,請參閱下列 文章 以取得指引。

回應

名稱 類型 Description
200 OK

DailyForecastResult

還行

Other Status Codes

ErrorResponse

發生未預期的錯誤。

安全性

AADToken

這些是 Entra OAuth 2.0 Flow Microsoft。 與 Azure 角色型存取配對時, 控制它可用來控制 Azure 地圖服務 REST API 的存取。 Azure 角色型訪問控制可用來指定一或多個 Azure 地圖服務資源帳戶或子資源的存取權。 任何使用者、群組或服務主體都可以透過內建角色或由一或多個 Azure 地圖服務 REST API 許可權所組成的自定義角色來授與存取權。

若要實作案例,建議您檢視 驗證概念。 總而言之,此安全性定義會透過能夠針對特定 API 和範圍進行訪問控制的物件,提供模型化應用程式的解決方案。

筆記

  • 此安全性定義 需要 使用 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 的使用方式允許針對多個使用案例設定應用程式。

類型: 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 地圖服務資源 列表 SAS 作業建立共用存取簽章令牌。

使用此令牌時,任何應用程式都有權使用 Azure 角色型訪問控制進行存取,並更精細地控制特定令牌的到期、速率和區域。 換句話說,SAS 令牌可用來讓應用程式以比共用密鑰更安全的方式控制存取。

對於公開的應用程式,我們建議在 對應帳戶資源上設定允許的來源特定清單, 以限制轉譯濫用,並定期更新 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"
      ]
    }
  ]
}

定義

名稱 Description
AirAndPollen
DailyForecast
DailyForecastResult
DailyForecastSummary

所要求時段主要條件的摘要。 請注意,摘要只能涵蓋時間週期的一部分。

DayOrNight
DegreeDaySummary
ErrorAdditionalInfo

資源管理錯誤其他資訊。

ErrorDetail

錯誤詳細數據。

ErrorResponse

錯誤回應

IconCode

數值,表示顯示 iconPhrase的影像。 如需詳細資訊,請參閱 Azure 地圖服務 中的 天氣服務。

JsonFormat

回應所需的格式。 僅支援 json 格式。

LocalSource

本機天氣數據提供者資訊。

PrecipitationType

指定降水類型(“雨”“雪”“冰”或“混合”)。 如果 dbz 為零,則 response 中沒有 precipitationType。

UnitType

與所顯示的單位類型相關聯的數值標識碼。 可用於單元翻譯。 如需詳細資訊,請參閱 Azure 地圖服務 中的 天氣服務。

WeatherDataUnit

指定以度量單位或英制單位傳回數據。 預設值為計量。

WeatherUnit

與天氣相關的指定單位的特定值。

WeatherUnitRange

傳回的溫度值。

WindDetails

正在傳回的風詳細數據,包括速度和方向。

WindDirection

風向

AirAndPollen

名稱 類型 Description
category

string

空氣品質或污染類型的類別。 例如,低、高、良好、中度、狀況不良、危險。

categoryValue

integer

與空氣品質或污染類別相關聯的值。 這些值的範圍從 1 到 6。 1 表示良好的條件,6 表示危險條件。

name

string

花粉或污染物的名稱。 例如,草、模具、草、草、空氣品質、樹狀和紫外線指數。

type

string

只有空氣品質存在。 範例包括臭氧和粒子污染。

value

integer

上述指定型別的值。 與模具、草、草、草和樹相關的值單位為每立方米的零件。 空氣品質和紫外線都是指數,因此它們都是無單位的。

DailyForecast

名稱 類型 Description
airAndPollen

AirAndPollen[]

空氣品質

date

string

以 ISO 8601 格式顯示的目前觀察日期和時間,例如 2019-10-27T19:39:57-08:00。

day

DayOrNight

日預測詳細數據

degreeDaySummary

DegreeDaySummary

取暖度日或冷卻度日平均溫度資訊的摘要

hoursOfSun

number

太陽數小時。

night

DayOrNight

夜間預測詳細數據

realFeelTemperature

WeatherUnitRange

正在傳回 RealFeel™ Temperature。

realFeelTemperatureShade

WeatherUnitRange

正在傳回 RealFeel™ Temperature。 描述陰影中溫度的真實感覺。

sources

string[]

預測數據的來源(秒)。

temperature

WeatherUnitRange

當天的溫度值。

DailyForecastResult

名稱 類型 Description
forecasts

DailyForecast[]

預測每個要求日的數據。

summary

DailyForecastSummary

所要求時段主要條件的摘要。 請注意,摘要只能涵蓋時間週期的一部分。

DailyForecastSummary

所要求時段主要條件的摘要。 請注意,摘要只能涵蓋時間週期的一部分。

名稱 類型 Description
category

string

一或2個單字來摘要詞組。

endDate

string

摘要期間結束的日期和時間,以 ISO 8601 格式顯示,例如 2019-10-27T19:39:57-08:00。

phrase

string

每日預測的摘要片語。 以指定的語言顯示。

severity

integer

嚴厲

startDate

string

摘要生效的日期和時間,以 ISO 8601 格式顯示,例如 2019-10-27T19:39:57-08:00。

DayOrNight

名稱 類型 Description
cloudCover

integer

代表雲端涵蓋的百分比。

hasPrecipitation

boolean

表示降水的存在或不存在。 True 表示降水的存在,false 表示沒有降水。

hoursOfIce

number

冰上數小時。

hoursOfPrecipitation

number

降水時數

hoursOfRain

number

雨數小時。

hoursOfSnow

number

雪數小時。

ice

WeatherUnit

iceProbability

integer

代表冰機率的百分比。 例如,『30』。

iconCode

IconCode

數值,表示顯示 iconPhrase的影像。 如需詳細資訊,請參閱 Azure 地圖服務 中的 天氣服務。

iconPhrase

string

圖示的片語描述。 以指定的語言顯示。 例如,『Sunny』。

localSource

LocalSource

本機天氣數據提供者資訊。

longPhrase

string

以指定語言預測的片語描述。 Azure 地圖服務會嘗試將此片語保留長度低於 100 個字元,但某些語言/天氣事件可能會導致較長的片語長度,超過 100 個字元。

precipitationIntensity

string

強度的描述。

precipitationProbability

integer

代表降水機率的百分比。 例如,『20』。

precipitationType

PrecipitationType

指定降水類型(“雨”“雪”“冰”或“混合”)。 如果 dbz 為零,則 response 中沒有 precipitationType。

rain

WeatherUnit

rainProbability

integer

代表雨機率的百分比。 例如,『40』。

shortPhrase

string

以指定語言預測的片語描述。 Azure 地圖服務會嘗試將此片語保留長度低於 30 個字元,但某些語言/天氣事件可能會導致較長的片語長度,超過 30 個字元。

snow

WeatherUnit

snowProbability

integer

代表降雪機率的百分比。 例如,『30』。

thunderstormProbability

integer

代表雷暴機率的百分比。 例如,『80』。

totalLiquid

WeatherUnit

預報期間降水量的總液體相等。

wind

WindDetails

正在傳回的風詳細數據,包括速度和方向。

windGust

WindDetails

風陣風。 風陣風是突然的,短暫的風速上升。

DegreeDaySummary

名稱 類型 Description
cooling

WeatherUnit

平均溫度高於 65 度 F/ 18 度 C 的度數。

heating

WeatherUnit

平均溫度低於 65 度 F/ 18 度 C 的度數。

ErrorAdditionalInfo

資源管理錯誤其他資訊。

名稱 類型 Description
info

object

其他資訊。

type

string

其他信息類型。

ErrorDetail

錯誤詳細數據。

名稱 類型 Description
additionalInfo

ErrorAdditionalInfo[]

錯誤其他資訊。

code

string

錯誤碼。

details

ErrorDetail[]

錯誤詳細數據。

message

string

錯誤訊息。

target

string

錯誤目標。

ErrorResponse

錯誤回應

名稱 類型 Description
error

ErrorDetail

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

JavaScript 物件表示法數據交換格式

LocalSource

本機天氣數據提供者資訊。

名稱 類型 Description
id

integer

本機數據提供者唯一的數值標識碼。

name

string

本機數據提供者的名稱。 如果有的話,名稱會顯示在URL中語言程式代碼所指定的語言中。 否則,Name 會以英文或提供名稱的語言顯示。

weatherCode

string

本機數據提供者所提供的天氣代碼。 此天氣代碼可讓預測與本機數據提供者提供的圖示比對,而不是 Azure 地圖服務圖示。

PrecipitationType

指定降水類型(“雨”“雪”“冰”或“混合”)。 如果 dbz 為零,則 response 中沒有 precipitationType。

名稱 類型 Description
Ice

string

Mix

string

混合

Rain

string

Snow

string

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

UnitType

與所顯示的單位類型相關聯的數值標識碼。 可用於單元翻譯。 如需詳細資訊,請參閱 Azure 地圖服務 中的 天氣服務。

value

number

四捨五入的值。

WeatherUnitRange

傳回的溫度值。

名稱 類型 Description
maximum

WeatherUnit

時間週期的最高溫度

minimum

WeatherUnit

時間週期的最低溫度。

WindDetails

正在傳回的風詳細數據,包括速度和方向。

名稱 類型 Description
direction

WindDirection

風向

speed

WeatherUnit

指定單位的風速。

WindDirection

風向

名稱 類型 Description
degrees

integer

Azimuth 度的風向,從真實北開始,順時針方向繼續。 北方是0度,東是90度,南是180度,西部是270度。 可能的值 0-359。

localizedDescription

string

指定語言的方向縮寫。