Skip to content

NetCDF 格式返回

1.接口说明

接口路径: https://api.tjweather.com/nc/beta

当前版本: v1.0.0

请求方式: GET

返回类型: NetCDF

请求数据类型:

接口描述: 查询单点坐标最新的气象高精度预报数据,范围全球可选,预报时长可选,时间分辨率提供 15 分钟、1 小时选项,返回 NetCDF 格式数据流。

2.请求参数

参数名说明参数类型默认值必填备注
key您的私钥字符串暂时线下交付
loc位置字符串支持全球范围任意经纬度查询,经度范围[-180,180]或[0,360],纬度范围[-90,90]格式:经度在前纬度在后,按照“,“分隔,分隔符支持中文和英文。举例:116.23128,40.22077
t_res时间分辨率字符串1h支持查询时间分辨率为 15 分钟(格式:15min)、1 小时(格式:1h)的数据,缺省为 1h
fcst_days预报天数整数3支持选择未来 D 天的不同预报长度的预报数据,D>=0,支持总时长 5、10、15、30、45 天内数据
fcst_hours预报小时数整数0支持选择未来 H 小时的不同预报长度的预报数据,H>=0,缺省为 0
fields要素字符串ws10m支持要素请参照要素编码列表,缺省为10米风,按照“,“分隔,举例:ws100m,ws10m,t2m
tz时区整数8缺省为北京时,8,范围[-12,12]
grid网格大小字符串11 表示 1*1 网格,缺省为:"1",格点数据支持,"1","3","5","7"
download是否下载布尔false支持下载二进制 nc 文件,true 表示下载,缺省为 false
filename下载文件名称字符串支持用户自定义下载文件名称,缺省为无,如未输入,则返回默认文件名称:lon{lon}-lat{lat}-days{fcst_days}-hours{fcst_hours}-grid{grid}-{yyyymmddhhmm}.nc

注:总预报时长按照 tot_hrs = fcst_days*24+fcst_hours 计算。

3.支持要素编码列表

3.1 支持全球区域要素(经度范围[-180,180]或[0,360],纬度范围[-90,90])

要素描述单位支持天数
u10m10 米纬向风m/s10/15/30/45
v10m10 米经向风m/s10/15/30/45
ws10m10 米风速m/s10/15/30/45
wd10m10 米风向°10/15/30/45
u100m100 米纬向风m/s10/15/30/45
v100m100 米经向风m/s10/15/30/45
wd100m100 米风向°10/15/30/45
ws100m100 米风速m/s10/15/30/45
t2m2 米温度°C10/15/30/45
cldt总云量110/15/30/45
cldh高云量110/15/30/45
cldm中云量110/15/30/45
cldl低云量110/15/30/45
psz地表气压Pa10/15/30/45
rh2m2 米相对湿度%10/15/30/45
tp降水mm/hr10/15/30/45
pres降雪量(累积值)mm10/15/30/45
prer降雨量(累积值)mm10/15/30/45
dod沙尘光学厚度10/15/30
dust_conc地表沙尘浓度μg/m³10/15/30
dust_ddep累计沉降mg/m²10/15/30
TMPsfc地表气温K10/15/30/45
DLWRFsfc地表向下长波通量W/㎡10/15/30
ssrd地表向下短波通量W/㎡10/15/30/45
ddsf_ave散射辐射W/㎡10/15
bdsf_ave直接辐射W/㎡10/15
SOILT10-10 厘米深度土壤温度K10
SOILT210-40 厘米深度土壤温度K10
SOILT340-100 厘米深度土壤温度K10
SOILT4100-200 厘米深度土壤温度K10
prei降冰量(累积量)mm10
preg霰降水量(累积值)mm10
dpt2m2 米露点温度K10/15/30/45
gust阵风m/s10
cape对流有效位能J/kg10
u10001000 百帕纬向风m/s10
u925925 百帕纬向风m/s10
u850850 百帕纬向风m/s10
u800800 百帕纬向风m/s10
u700700 百帕纬向风m/s10
u600600 百帕纬向风m/s10
u500500 百帕纬向风m/s10
u400400 百帕纬向风m/s10
u300300 百帕纬向风m/s10
u200200 百帕纬向风m/s10
u100100 百帕纬向风m/s10
v10001000 百帕经向风m/s10
v925925 百帕经向风m/s10
v850850 百帕经向风m/s10
v800800 百帕经向风m/s10
v700700 百帕经向风m/s10
v600600 百帕经向风m/s10
v500500 百帕经向风m/s10
v400400 百帕经向风m/s10
v300300 百帕经向风m/s10
v200200 百帕经向风m/s10
v100100 百帕经向风m/s10
t10001000 百帕温度K10
t925925 百帕温度K10
t850850 百帕温度K10
t800800 百帕温度K10
t700700 百帕温度K10
t600600 百帕温度K10
t500500 百帕温度K10
t400400 百帕温度K10
t300300 百帕温度K10
t200200 百帕温度K10
t100100 百帕温度K10
q10001000 百帕比湿kg/kg10
q925925 百帕比湿kg/kg10
q850850 百帕比湿kg/kg10
q800800 百帕比湿kg/kg10
q700700 百帕比湿kg/kg10
q600600 百帕比湿kg/kg10
q500500 百帕比湿kg/kg10
q400400 百帕比湿kg/kg10
q300300 百帕比湿kg/kg10
q200200 百帕比湿kg/kg10
q100100 百帕比湿kg/kg10
SPFH2m2 米比湿kg/kg10/15/30/45
rh10001000 百帕相对湿度%10
rh925925 百帕相对湿度%10
rh850850 百帕相对湿度%10
rh800800 百帕相对湿度%10
rh700700 百帕相对湿度%10
rh600600 百帕相对湿度%10
rh500500 百帕相对湿度%10
rh400400 百帕相对湿度%10
rh300300 百帕相对湿度%10
rh200200 百帕相对湿度%10
rh100100 百帕相对湿度%10
h10001000 百帕位势高度m10
h925925 百帕位势高度m10
h850850 百帕位势高度m10
h800800 百帕位势高度m10
h700700 百帕位势高度m10
h600600 百帕位势高度m10
h500500 百帕位势高度m10
h400400 百帕位势高度m10
h300300 百帕位势高度m10
h200200 百帕位势高度m10
h100100 百帕位势高度m10
omg10001000 百帕垂直速度Pa/s10
omg925925 百帕垂直速度Pa/s10
omg850850 百帕垂直速度Pa/s10
omg800800 百帕垂直速度Pa/s10
omg700700 百帕垂直速度Pa/s10
omg600600 百帕垂直速度Pa/s10
omg500500 百帕垂直速度Pa/s10
omg400400 百帕垂直速度Pa/s10
omg300300 百帕垂直速度Pa/s10
omg200200 百帕垂直速度Pa/s10
omg100100 百帕垂直速度Pa/s10
dp10001000 百帕露点温度K10
dp925925 百帕露点温度K10
dp850850 百帕露点温度K10
dp800800 百帕露点温度K10
dp700700 百帕露点温度K10
dp600600 百帕露点温度K10
dp500500 百帕露点温度K10
dp400400 百帕露点温度K10
dp300300 百帕露点温度K10
dp200200 百帕露点温度K10
dp100100 百帕露点温度K10
slp海平面气压mb10/15/30
base_reflectivity基本反射率dBz10
max_reflectivity最大反射率dBz10
SHTFLsfc地表感热通量W/m²10
LHTFLsfc地表潜热通量W/m²10
ZORLsfc地表粗糙度m10
qnh修正海平面气压hPa10
t70m70 米温度K10
USWRFsfc地表向上短波通量W/㎡10
ULWRFsfc地表向上长波通量W/㎡10
ri_min理查德森数10

3.2 只支持中国区域要素(经度范围[50.5,149.95],纬度范围[0.05,69.95])

要素描述单位支持天数
u30m30 米纬向风m/s10/15/30/45
u50m50 米纬向风m/s10/15/30
u60m60 米纬向风m/s10
u65m65 米纬向风m/s10
u70m70 米纬向风m/s10
u75m75 米纬向风m/s10
u80m80 米纬向风m/s10
u85m85 米纬向风m/s10
u90m90 米纬向风m/s10
u95m95 米纬向风m/s10
u105m105 米纬向风m/s10
u110m110 米纬向风m/s10
u115m115 米纬向风m/s10
u120m120 米纬向风m/s10
u125m125 米纬向风m/s10
u130m130 米纬向风m/s10
u135m135 米纬向风m/s10
u140m140 米纬向风m/s10
u145m145 米纬向风m/s10
u150m150 米纬向风m/s10
u160m160 米纬向风m/s10
u170m170 米纬向风m/s10/15/30
v30m30 米经向风m/s10/15/30/45
v50m50 米经向风m/s10/15/30
v60m60 米经向风m/s10
v65m65 米经向风m/s10
v70m70 米经向风m/s10
v75m75 米经向风m/s10
v80m80 米经向风m/s10
v85m85 米经向风m/s10
v90m90 米经向风m/s10
v95m95 米经向风m/s10
v105m105 米经向风m/s10
v110m110 米经向风m/s10
v115m115 米经向风m/s10
v120m120 米经向风m/s10
v125m125 米经向风m/s10
v130m130 米经向风m/s10
v135m135 米经向风m/s10
v140m140 米经向风m/s10
v145m145 米经向风m/s10
v150m150 米经向风m/s10
v160m160 米经向风m/s10
v170m170 米经向风m/s10/15/30
ws30m30 米风速m/s10/15/30/45
ws50m50 米风速m/s10/15/30
ws60m60 米风速m/s10
ws65m65 米风速m/s10
ws70m70 米风速m/s10
ws75m75 米风速m/s10
ws80m80 米风速m/s10
ws85m85 米风速m/s10
ws90m90 米风速m/s10
ws95m95 米风速m/s10
ws105m105 米风速m/s10
ws110m110 米风速m/s10
ws115m115 米风速m/s10
ws120m120 米风速m/s10
ws125m125 米风速m/s10
ws130m130 米风速m/s10
ws135m135 米风速m/s10
ws140m140 米风速m/s10
ws145m145 米风速m/s10
ws150m150 米风速m/s10
ws160m160 米风速m/s10
ws170m170 米风速m/s10/15/30
wd30m30 米风向°10/15/30/45
wd50m50 米风向°10/15/30
wd60m60 米风向°10
wd65m65 米风向°10
wd70m70 米风向°10
wd75m75 米风向°10
wd80m80 米风向°10
wd85m85 米风向°10
wd90m90 米风向°10
wd95m95 米风向°10
wd105m105 米风向°10
wd110m110 米风向°10
wd115m115 米风向°10
wd120m120 米风向°10
wd125m125 米风向°10
wd130m130 米风向°10
wd135m135 米风向°10
wd140m140 米风向°10
wd145m145 米风向°10
wd150m150 米风向°10
wd160m160 米风向°10
wd170m170 米风向°10/15/30

4.请求示例

cURL 请求示例

bash
curl -l 'https://api.tjweather.com/nc/beta?key=APPxxxx&fields=ws100m&loc=99.58,36.44&fcst_days=0&fcst_hours=2&grid=7&download=true'

Java 请求示例

java
import okhttp3.*;

public class QueryClusterInfoDemo {

    public static final String URL = "https://api.tjweather.com/nc/beta?key=APPxxxx&fields=ws10m&loc=99.58,36.44&fcst_days=0&fcst_hours=2&grid=7&download=true";

    public static void main(String[] args) throws Exception {
        OkHttpClient client = new OkHttpClient().newBuilder()
                .build();
        Request request = new Request.Builder()
                .url(URL)
                .method("GET", null)
                .build();
        Response response = client.newCall(request).execute();
        System.out.println(response.body().string());
    }
}

支持重试示例
当客户端出现信号灯超时,服务器拒绝等异常情况请求失败时,可以通过重试提升成功率

java
import okhttp3.*;

public class QueryClusterInfoDemo {
    public static final String URL = "https://api.tjweather.com/nc/beta?key=APPxxxx&fields=ws10m&loc=99.58,36.44&fcst_days=0&fcst_hours=2&grid=1";

    public static Request buildOkHttpRequest(String url) {
        return new Request.Builder()
                .url(url)
                .method("GET", null)
                .build();
    }

    public static void main(String[] args) {
        OkHttpClient client = new OkHttpClient().newBuilder().build();
        Request request = buildOkHttpRequest(URL);
        int retryCount = 0;
        int maxRetries = 3;
        boolean success = false;
        while (retryCount < maxRetries && !success) {
            try {
                Response response = client.newCall(request).execute();
                success = true;
                System.out.println(response.body().string());
            } catch (Exception e) {
                retryCount++;
            }
        }
        if (!success) {
            System.out.println("Failed to complete the request after " + maxRetries + " retries.");
        }
    }
}

5.响应消息

返回示例: 二进制文件流

错误示例:

json
{
  "code": 10001,
  "message": "查询失败,请稍后再试!",
  "data": null
}

6.常见错误码

错误码说明
500服务器内部错误
10001查询失败,请稍后再试
10004接口不存在
10005超过访问量上限(N 次/日)
10006要素超出可查询有效期
10007超过并发量上限(N 次/秒)
10011请求链接与所用的 appKey 不对应,请确认链接地址是否正确
10012非法 appKey!
10014服务繁忙,请稍后再访问!
10016nc 文件构建失败
10017用户状态异常
20001缺失必选参数
20002要素暂未开放
20003要素未订阅
20004参数值非法,例如参数要求是数字,结果输入中文
20005参数格式非法,例如坐标分隔符需要用逗号分隔,使用了其他非法字符进行分割
20006参数长度非法,输入超过长度限制
20007经度不在[-180,360]范围内
20008纬度不在[90,-90]范围内
20009当前请求预报数据最多查询 N 天!
20010目前仅提供 15min/1h 时间分辨率预报数据!
20011当前请求同时最多获取 N 个要素预报数据!
20012格点数据非法,目前仅支持 1,3,5,7!
20014用户 API 未启用
20015API 未启用
20017当前请求点位坐标 loc 未订阅!
20018当前请求点位坐标 grid 未订阅!