Method: forecast.days.lookup

傳回特定位置的每日預測資料,最多 10 天,從當天開始。

HTTP 要求

GET https://weather.googleapis.com/v1/forecast/days:lookup

這個網址使用 gRPC 轉碼語法。

查詢參數

參數
location

object (LatLng)

必要欄位。取得每日天氣預報的位置。

unitsSystem

enum (UnitsSystem)

選用設定。用於傳回天氣狀況的單位系統。如果未提供,系統會以公制單位傳回天氣狀況 (預設值 = METRIC)。

pageSize

integer

選用設定。每頁傳回的每日預報記錄數量上限,值介於 1 到 10 (含)。預設值為 5。

pageToken

string

選用設定。從先前要求收到的網頁權杖。用於擷取後續網頁。

days

integer

選用設定。限制從當天開始擷取的總天數,值介於 1 到 10 (含) 之間。預設值為允許的最大值 10。

languageCode

string

選用設定。允許用戶端選擇回應的語言。如果無法提供該語言的資料,API 會使用最接近的值。有效值取決於 IETF BCP-47 標準。預設值為「en」。

要求主體

要求主體必須為空白。

回應主體

回應 days.lookup RPC。

如果成功,回應主體會含有以下結構的資料:

JSON 表示法
{
  "forecastDays": [
    {
      object (ForecastDay)
    }
  ],
  "timeZone": {
    object (TimeZone)
  },
  "nextPageToken": string
}
欄位
forecastDays[]

object (ForecastDay)

根據要求中指定的天數和頁面大小,取得每日預測記錄。

timeZone

object (TimeZone)

要求位置的時區。

nextPageToken

string

用來擷取下一頁的符記。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

ForecastDay

代表特定地點的每日預測記錄。

JSON 表示法
{
  "interval": {
    object (Interval)
  },
  "displayDate": {
    object (Date)
  },
  "daytimeForecast": {
    object (ForecastDayPart)
  },
  "nighttimeForecast": {
    object (ForecastDayPart)
  },
  "maxTemperature": {
    object (Temperature)
  },
  "minTemperature": {
    object (Temperature)
  },
  "feelsLikeMaxTemperature": {
    object (Temperature)
  },
  "feelsLikeMinTemperature": {
    object (Temperature)
  },
  "maxHeatIndex": {
    object (Temperature)
  },
  "sunEvents": {
    object (SunEvents)
  },
  "moonEvents": {
    object (MoonEvents)
  },
  "iceThickness": {
    object (IceThickness)
  }
}
欄位
interval

object (Interval)

這個預測日期的開始 (包含) 和結束 (不含) 時間,以世界標準時間為單位。注意:一天的時間範圍是從當地時間早上 7 點開始,到隔天早上 7 點結束。舉例來說,如果當地時區為 UTC-7,則限制時段會從 14:00:00.000Z 開始,並在隔天同一個時段結束。

displayDate

object (Date)

這個每日預測資料計算的所在位置時區 (公曆時間) 當地日期。此欄位可用於在用戶端上顯示。

daytimeForecast

object (ForecastDayPart)

當天白天 (當地時間上午 7 點至下午 7 點) 的預測天氣狀況。

nighttimeForecast

object (ForecastDayPart)

當天晚上的預測天氣狀況 (當地時間晚上 7 點至隔天早上 7 點)。

maxTemperature

object (Temperature)

全天最高 (最高) 溫度。

minTemperature

object (Temperature)

當天最低 (最低) 溫度。

feelsLikeMaxTemperature

object (Temperature)

一天當中最高 (最高) 的體感溫度。

feelsLikeMinTemperature

object (Temperature)

全天最低 (最低) 體感溫度。

maxHeatIndex

object (Temperature)

全天最高熱指數溫度。

sunEvents

object (SunEvents)

與太陽相關的事件 (例如日出、日落)。

moonEvents

object (MoonEvents)

與月亮相關的事件 (例如日出、日落)。

iceThickness

object (IceThickness)

整天累積的冰量。

日期

表示完整或部分的日曆日期,例如生日。您可以視重要性決定是否要在別處指定時段和時區。日期以公曆為主,可代表下列任一項目:

  • 完整日期,具有非零的年、月和日值。
  • 月和日值,年值為零 (例如週年紀念日)。
  • 只有年,月和日值為零。
  • 年和月,日值為零 (例如信用卡到期日)。

相關類型:

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
欄位
year

integer

日期的年份。必須為 1 到 9999;如要指定不含年份的日期,請輸入 0。

month

integer

月份。必須為 1 到 12;如要指定不含日期的年份,請輸入 0。

day

integer

月內的日期。必須為 1 到 31,並屬於有效的年和月;如果只指定年份,或只指定年份和月份,而不指定當月第幾日的話,請輸入 0。

ForecastDayPart

代表一天中某段時間的預測記錄。

JSON 表示法
{
  "interval": {
    object (Interval)
  },
  "weatherCondition": {
    object (WeatherCondition)
  },
  "precipitation": {
    object (Precipitation)
  },
  "wind": {
    object (Wind)
  },
  "relativeHumidity": integer,
  "uvIndex": integer,
  "thunderstormProbability": integer,
  "cloudCover": integer
}
欄位
interval

object (Interval)

這個時段開始 (含) 和結束 (不含) 的 UTC 日期和時間。注意:一天的某段時間是指當地時間早上 7 點到晚上 7 點。舉例來說,如果當地時區為 UTC-7,則白天時段會從 14:00:00.000Z 開始,結束時間為隔天 02:00:00.000Z,而夜間時段會從隔天 02:00:00.000Z 開始,結束時間為當天 14:00:00.000Z

weatherCondition

object (WeatherCondition)

預測的天氣狀況。

precipitation

object (Precipitation)

預測的降水量。

wind

object (Wind)

平均風向、最大風速和陣風。

relativeHumidity

integer

預測的相對濕度百分比 (值介於 0 到 100)。

uvIndex

integer

預測的紫外線 (UV) 指數上限。

thunderstormProbability

integer

平均雷暴天氣機率。

cloudCover

integer

平均雲量百分比。

SunEvents

代表與太陽相關的事件 (例如日出、日落)。

JSON 表示法
{
  "sunriseTime": string,
  "sunsetTime": string
}
欄位
sunriseTime

string (Timestamp format)

日出時間。

注意:在某些特殊情況下 (例如北極圈以北),一天可能沒有日出時間。在這種情況下,系統會取消設定這個欄位。

使用 RFC 3339,產生的輸出內容一律會經過 Z 規格化,並使用 0、3、6 或 9 小數位數。系統也接受「Z」以外的偏移值。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

sunsetTime

string (Timestamp format)

日落時間。

注意:在某些特殊情況下 (例如北極圈以北),一天可能沒有日落時間。在這種情況下,系統會取消設定這個欄位。

使用 RFC 3339,產生的輸出內容一律會經過 Z 規格化,並使用 0、3、6 或 9 小數位數。系統也接受「Z」以外的偏移值。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

MoonEvents

代表與月亮相關的事件 (例如日出、日落)。

JSON 表示法
{
  "moonriseTimes": [
    string
  ],
  "moonsetTimes": [
    string
  ],
  "moonPhase": enum (MoonPhase)
}
欄位
moonriseTimes[]

string (Timestamp format)

月亮上半部出現在地平線上的時間 (請參閱 https://en.wikipedia.org/wiki/Moonrise_and_moonset)

注意:在大多數情況下,每天都會有一次月升時間。在其他情況下,清單可能會是空白 (例如月亮在隔天午夜過後升起)。不過,在特殊情況下 (例如在極地地區),清單可能會包含多個值。在這種情況下,系統會以遞增順序排列值。

使用 RFC 3339,產生的輸出內容一律會經過 Z 規格化,並使用 0、3、6 或 9 小數位數。系統也接受「Z」以外的偏移值。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

moonsetTimes[]

string (Timestamp format)

月亮上半部消失在地平線下方的時間 (請參閱 https://en.wikipedia.org/wiki/Moonrise_and_moonset))。

注意:在大多數情況下,每天都會有一次月落時間。在其他情況下,清單可能會是空白 (例如月亮在隔天午夜過後才下山)。不過,在特殊情況下 (例如在極地地區),清單可能會包含多個值。在這種情況下,系統會以遞增順序排列值。

使用 RFC 3339,產生的輸出內容一律會經過 Z 規格化,並使用 0、3、6 或 9 小數位數。系統也接受「Z」以外的偏移值。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

moonPhase

enum (MoonPhase)

月相 (又稱為月相)。

MoonPhase

標示月相 (又稱為月相)。

列舉
MOON_PHASE_UNSPECIFIED 未指定月相。
NEW_MOON 月亮沒有受到太陽照射。
WAXING_CRESCENT 在北半球 🌒,月亮的右半部會亮 0% 到 50%;在南半球 🌘,月亮的左半部會亮 0% 到 50%。
FIRST_QUARTER 在北半球 🌓 中,月亮的右半部亮度為 50.1%,在南半球 🌗 中,月亮的左半部亮度為 50.1%。
WAXING_GIBBOUS 在北半球,月亮的右側亮度為 50%-100% 🌔,在南半球則為左側亮度 🌖。
FULL_MOON 月亮已完全照亮。
WANING_GIBBOUS 在北半球 🌖,月亮的左半部亮度為 50%-100%,在南半球 🌔,月亮的右半部亮度為 50%-100%。
LAST_QUARTER 在北半球 🌗 和南半球 🌓,月亮的左側和右側分別有 50.1% 和 50.1% 的亮度。
WANING_CRESCENT 在北半球 🌘,月亮的左半部亮度為 0% 到 50%,在南半球 🌒,月亮的右半部亮度為 0% 到 50%。