首页 全国天气预报 全国天气预报示例代码 天气预报查询[Nodejs]

天气预报查询示例代码Nodejs

作者: 阅读数:1135 上传时间:2025-04-01

天气预报查询

// 1. 安装 axios(如果未安装)
// 在终端执行: npm install axios

const axios = require('axios');

// 2. 直接配置参数
const url = 'https://api.jisuapi.com/weather/query';
const params = {
  appkey: 'your_appkey_here', // 替换成你的真实appkey
  city: '安顺',
  cityid: '',
  citycode: '',
  location: '',
  ip: ''
};

// 3. 立即发送请求
axios.get(url, { params })
  .then(response => {
    // 检查API业务状态码
    if (response.data.status !== 0) {
      console.error('API返回错误:', response.data.status+"-"+response.data.msg);
      return;
    }

    // 输出结果
    // 基本天气信息
    console.log('基本天气信息:');
    for (const [key, value] of Object.entries(response.data.result)) {
      if(typeof value !== 'object')
      {
        console.log(`${key.padEnd(8)}:`, value);
      }
    }
    console.log('----------------------------------');

    // 生活指数
    console.log('生活指数:');
    for (const [key_index, value_index] of Object.entries(response.data.result.index)) {
      for (const [k2, v2] of Object.entries(value_index)) {
        console.log(`${k2.padEnd(8)}:`, v2);
      }
      console.log('----------------------------------');
    }

    // 空气质量指数
    console.log('空气质量指数:');
    for (const [key_aqi, value_aqi] of Object.entries(response.data.result.aqi)) {
      console.log(`${key_aqi.padEnd(8)}:`, value_aqi);
    }
    console.log('----------------------------------');

    // 未来七天天气
    console.log('未来七天天气:');
    for (const [key_daily, value_daily] of Object.entries(response.data.result.daily)) {
      for (const [k2, v2] of Object.entries(value_daily)) {
        console.log(`${k2.padEnd(8)}:`, v2);
      }
      console.log('----------------------------------');
    }

    // 逐小时天气
    console.log('逐小时天气:');
    for (const [key_hourly, value_hourly] of Object.entries(response.data.result.hourly)) {
      for (const [k2, v2] of Object.entries(value_hourly)) {
        console.log(`${k2.padEnd(8)}:`, v2);
      }
      console.log('----------------------------------');
    }
  })
  .catch(error => {
    // 统一错误处理
    console.error('请求失败!');
  });