Logo
Section 1 / 2

空气质量 API

学习如何获取特定位置的当前、预报和历史空气污染数据。

导入

空气质量 API

学习如何获取特定位置的当前、预报和历史空气污染数据。

该 API 提供任意指定位置的当前空气污染数据。此外,它还提供所选位置的空气质量预报和历史空气污染数据。

注意: 历史空气污染数据自 2020 年 11 月 27 日起可用。

Course Image

空气质量指数(AQI)等级

定性名称指数污染物浓度(μg/m³)
NO2PM10O3PM2.5(可选)
优10-500-250-600-15
良250-10025-5060-12015-30
中等3100-20050-90120-18030-55
差4200-40090-180180-24055-110
极差5>400>180>240>110

请求参数

参数类型分类描述
APP_ID字符串必填这是您的唯一 API 密钥。
lat十进制必填该位置的纬度。
lon十进制必填该位置的经度。
1// 导入所需库 2import fetch from "node-fetch"; 3 4// 定义 API 密钥 5const APP_ID = '{{APP_ID}}'; 6 7// 定义接口地址 8const url = new URL(`http://api.openweathermap.org/data/2.5/air_pollution`); 9 10// 定义请求头参数 11const headerParameters = { 12 contentType: 'application/json', 13}; 14 15// 定义查询参数 16const lat = 47.6038321; 17const lon = -122.3300624; 18 19const queryParameters = new URLSearchParams({ 20 lat: lat.toString(), 21 lon: lon.toString(), 22 appid: APP_ID 23}); 24 25// 设置 API 请求选项 26const options = { 27 method: 'GET', 28 headers: headerParameters, 29}; 30 31// 发起 API 请求的函数 32async function getAirPollution() { 33 try { 34 url.search = queryParameters; 35 const response = await fetch(url, options); 36 37 // 自定义函数:打印 API 响应结果 38 printResponse(response); 39 } catch (error) { 40 // 自定义函数:打印错误信息 41 printError(error); 42 } 43} 44 45// 调用函数发起请求 46getAirPollution();

响应字段

字段类型描述
coord.lat十进制该位置的纬度。
coord.lon十进制该位置的经度。
list.components.co十进制一氧化碳浓度,单位为 μg/m³。
list.components.nh3十进制氨气浓度,单位为 μg/m³。
list.components.no十进制一氧化氮浓度,单位为 μg/m³。
list.components.no2十进制二氧化氮浓度,单位为 μg/m³。
list.components.o3十进制臭氧浓度,单位为 μg/m³。
list.components.pm10十进制粗颗粒物浓度,单位为 μg/m³。
list.components.pm2_5十进制细颗粒物浓度,单位为 μg/m³。
list.components.so2十进制二氧化硫浓度,单位为 μg/m³。
list.dt日期时间时间戳,单位为 Unix 时间(UTC)。
list.main.aqi整数空气质量指数,取值范围:1 表示优,2 表示良,3 表示中等,4 表示差,5 表示极差。

请求参数

参数类型分类描述
APP_ID字符串必填这是您的唯一 API 密钥。
lat十进制必填该位置的纬度。
lon十进制必填该位置的经度。
1// 导入所需库 2import fetch from "node-fetch"; 3 4// 定义 API 密钥 5const APP_ID = '{{APP_ID}}'; 6 7// 定义接口地址(预报) 8const url = new URL(`http://api.openweathermap.org/data/2.5/air_pollution/forecast`); 9 10// 定义请求头参数 11const headerParameters = { 12 contentType: 'application/json', 13}; 14 15// 定义查询参数 16const lat = 47.6038321; 17const lon = -122.3300624; 18 19const queryParameters = new URLSearchParams({ 20 lat: lat.toString(), 21 lon: lon.toString(), 22 appid: APP_ID 23}); 24 25// 设置 API 请求选项 26const options = { 27 method: 'GET', 28 headers: headerParameters, 29}; 30 31// 发起 API 请求的函数 32async function getAirPollution() { 33 try { 34 url.search = queryParameters; 35 const response = await fetch(url, options); 36 37 // 自定义函数:打印 API 响应结果 38 printResponse(response); 39 } catch (error) { 40 // 自定义函数:打印错误信息 41 printError(error); 42 } 43} 44 45// 调用函数发起请求 46getAirPollution();

响应字段

字段类型描述
coord.lat十进制该位置的纬度。
coord.lon十进制该位置的经度。
list.components.co十进制一氧化碳浓度,单位为 μg/m³。
list.components.nh3十进制氨气浓度,单位为 μg/m³。
list.components.no十进制一氧化氮浓度,单位为 μg/m³。
list.components.no2十进制二氧化氮浓度,单位为 μg/m³。
list.components.o3十进制臭氧浓度,单位为 μg/m³。
list.components.pm10十进制粗颗粒物浓度,单位为 μg/m³。
list.components.pm2_5十进制细颗粒物浓度,单位为 μg/m³。
list.components.so2十进制二氧化硫浓度,单位为 μg/m³。
list.dt日期时间时间戳,单位为 Unix 时间(UTC)。
list.main.aqi整数空气质量指数,取值范围:1 表示优,2 表示良,3 表示中等,4 表示差,5 表示极差。

请求参数

参数类型分类描述
APP_ID字符串必填这是您的唯一 API 密钥。
lat十进制必填该位置的纬度。
lon十进制必填该位置的经度。
start日期时间必填查询起始时间,单位为 Unix 时间(UTC)。
end日期时间必填查询结束时间,单位为 Unix 时间(UTC)。
1// 导入所需库 2import fetch from "node-fetch"; 3 4// 定义 API 密钥 5const APP_ID = '{{APP_ID}}'; 6 7// 定义接口地址(历史数据) 8const url = new URL(`http://api.openweathermap.org/data/2.5/air_pollution/history`); 9 10// 定义请求头参数 11const headerParameters = { 12 contentType: 'application/json', 13}; 14 15// 定义查询参数 16const lat = 47.6038321; 17const lon = -122.3300624; 18const currentTimeInMs = Date.now(); 19const secs1Day = 24 * 60 * 60; 20const start = parseInt((currentTimeInMs/1000) - (5 * secs1Day)); 21const end = parseInt(currentTimeInMs/1000); 22 23const queryParameters = new URLSearchParams({ 24 lat: lat.toString(), 25 lon: lon.toString(), 26 start: start.toString(), 27 end: end.toString(), 28 appid: APP_ID 29}); 30 31// 设置 API 请求选项 32const options = { 33 method: 'GET', 34 headers: headerParameters, 35}; 36 37// 发起 API 请求的函数 38async function getAirPollution() { 39 try { 40 url.search = queryParameters; 41 const response = await fetch(url, options); 42 43 // 自定义函数:打印 API 响应结果 44 printResponse(response); 45 } catch (error) { 46 // 自定义函数:打印错误信息 47 printError(error); 48 } 49} 50 51// 调用函数发起请求 52getAirPollution();

响应字段

字段类型描述
coord.lat十进制该位置的纬度。
coord.lon十进制该位置的经度。
list.components.co十进制一氧化碳浓度,单位为 μg/m³。
list.components.nh3十进制氨气浓度,单位为 μg/m³。
list.components.no十进制一氧化氮浓度,单位为 μg/m³。
list.components.no2十进制二氧化氮浓度,单位为 μg/m³。
list.components.o3十进制臭氧浓度,单位为 μg/m³。
list.components.pm10十进制粗颗粒物浓度,单位为 μg/m³。
list.components.pm2_5十进制细颗粒物浓度,单位为 μg/m³。
list.components.so2十进制二氧化硫浓度,单位为 μg/m³。
list.dt日期时间时间戳,单位为 Unix 时间(UTC)。
list.main.aqi整数空气质量指数,取值范围:1 表示优,2 表示良,3 表示中等,4 表示差,5 表示极差。

OpenWeatherMap 额外响应字段

地理编码 API