15 天预报
查询经纬度点位未来 15 天天气预报数据,数据每小时更新一次。
接口地址
https://api.foreocean.com/weather/daily/15d
请求方式
GET
请求参数说明
参数名称 | 类型 | 是否必须 | 备注 |
---|---|---|---|
Token | String | 是 | API 调用令牌,您申请应用的 Token,放在请求头中 |
location | String | 是 | 经纬度,经度在前,纬度在后,例如:120.398207,36.070148 |
version | String | 是 | 调用的接口版本,固定为:1.0 |
请求示例
java
public static void main(String[] args) {
Map<String, Object> params = new HashMap<>(16);
params.put("location", "118.996044,38.63521");
params.put("version", "1.0");
String requestUrl = "https://api.foreocean.com/weather/daily/15d";
String response = get(requestUrl, params);
System.out.println(response);
}
public static String get(String url, Map<String, Object> params) {
try {
CloseableHttpClient httpClient = HttpClients.createDefault();
url = url + "?";
for (Iterator<String> iterator = params.keySet().iterator(); iterator.hasNext();) {
String key = iterator.next();
String temp = key + "=" + params.get(key) + "&";
url = url + temp;
}
url = url.substring(0, url.length() - 1);
HttpGet httpGet = new HttpGet(url);
httpGet.addHeader("Token","API调用令牌");
CloseableHttpResponse response = httpClient.execute(httpGet);
try {
HttpEntity entity = response.getEntity();
if (entity != null) {
String str = EntityUtils.toString(entity, CHARSET);
return str;
}
} finally {
response.close();
httpClient.close();
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
python
import requests
if __name__ == '__main__':
url = 'https://api.foreocean.com/weather/daily/15d'
headers = {'Token': 'API调用令牌'}
params = {'location': '118.996044,38.63521','version': '1.0'}
response = requests.get(url, headers=headers, params=params)
print(response.text)
返回结果示例
{
"code": "1000", //响应码,1000-处理成功,其他代码说明请参考API返回错误代码说明
"data": [
{
"cityName": "Beijing",//城市名
"lon": "116.4658",//经度
"lat": "39.9191",//纬度
"dateTime": "2023-06-01",//数据时刻
"weatherCode": 1033,//天气代码 参考【海洋天气对照表】菜单
"weatherDescription": "多云",//天气现象
"minTemperature": 20.4,//最低温度 摄氏度℃
"maxTemperature": 32.8,//最高温度 摄氏度℃
"lowTemperature": 20.4,//夜间最低温度 摄氏度℃
"highTemperature": 33.7,//白天最高温度 摄氏度℃
"averageTemperature": 27,//平均气温 摄氏度℃
"clouds": 40,//云层量 %
"probability": 0,//降雨概率 %
"precipitation": 0,//降雨量 mm/hr
"seaPressure": 1000.6,//海平面气压 mb
"ultravioletRays": 7.8,//紫外线指数 范围0-11
"windDirection": 311,//风向角度度数
"windSpeed": 3.4,//风速 m/s
"windMark": "西北",//风向描述
"visibility": 24.128,//能见度 km
"pressure": 996.4,//气压 mb
"snow": 0,//降雪量 mm/hr
"snowDepth": 0,//降雪厚度 mm
"minAppTemp": 19.9,//最低体感温度 摄氏度℃
"maxAppTemp": 30.4,//最高体感温度 摄氏度℃
"rHumidity": 29//相对湿度 %
},
//...后续省略
],
"msg": "success", //返回信息描述
"success": true //请求是否成功,true-成功,false-失败
}