---
name: "getWeathers"
mode: "api"
versionRequirements:
  - { name: "@ray-js/ray", version: "1.5.2" }
title: "getWeathers - 天气预报接口。"
---

## getWeathers

> [VERSION] @ray-js/ray >= 1.5.2

### 描述

获取天气预报信息

### 参数

`Params`

| 参数 | 类型 | 必填 | 描述 |
| --- | --- | --- | --- |
| `params` | `IGetWeathers` | 是 | 请求参数 |

### 返回值

类型: `Promise<IGetWeathersResponse>`

天气预报信息，包含城市信息及未来多日的天气数据（温度、湿度、风向、风速、日出日落时间等）

##### IGetWeathersResponse

| 属性 | 类型 | 描述 |
| --- | --- | --- |
| `c` | `Object[]` | 城市信息 |
| `weathers` | `Object[]` | 天气预报数据 |

##### IGetWeathersResponse.c[] 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `name` | `string` | 是 | - | 城市名称 |
| `id` | `number` | 是 | - | 城市 ID |


##### IGetWeathersResponse.weathers[] 的属性

| 属性 | 类型 | 必填 | 默认值 | 描述 |
| --- | --- | --- | --- | --- |
| `temp` | `number` | 是 | - | 风向 |
| `thigh` | `number` | 是 | - | 日落文本 |
| `pressure` | `number` | 是 | - | 概述 |
| `condition` | `string` | 是 | - | 体感温度 |
| `tlow` | `number` | 是 | - | 二氧化氮 |
| `pop` | `number` | 是 | - | 降雨概率，单位% |
| `qpf` | `number` | 是 | - | 降水量，单位毫米 |
| `condIconUrl` | `string` | 是 | - | 日落时间戳 |
| `humidity` | `number` | 是 | - | 空气湿度 |
| `conditionNum` | `string` | 是 | - | 天气文本编号 |
| `windSpeed` | `string` | 是 | - | 风速，国内外都是 m/s |
| `windDir` | `string` | 是 | - | 风向 |
| `windLevel` | `number` | 是 | - | 风速等级 |
| `zoneId` | `string` | 是 | - | 时区 |
| `sunRise` | `string` | 是 | - | 日出时间文本 |
| `sunSet` | `string` | 是 | - | 日落时间文本 |
| `sunSetTimestamp` | `number` | 是 | - | 日落时间戳 |
| `sunRiseTimestamp` | `number` | 是 | - | 日出时间戳 |


### 引用对象

##### `interface` IGetWeathers

| 属性 | 类型 | 描述 |
| --- | --- | --- |
| `devId` | `string` | 设备 ID |
| `dataRange` | `number` | 预报天数（默认值为 7，最大可预报天数为 7） |


### 示例代码

#### 基础用法

```ts
import { getWeathers } from '@ray-js/ray';

getWeathers({
  devId: 'vdevo169477319679442',
  dataRange: 7,
}).then((res) => {
  console.log('天气预报:', res);
}).catch((error) => {
  console.error(error);
});
```
