海啸产品共包含两个接口,最近 5 次海啸事件列表
以及海啸详情数据
,最近5次海啸事件列表
接口返回近 5 次海啸事件编号,海啸详情数据
需要用海啸事件编号请求海啸详情数据。
最近5次海啸事件列表
根据时间排序,获取最近发生的 5 次海啸事件
接口地址
https://api.foreocean.com/warning/lastesTsunamiEvents
请求方式
GET
请求参数说明
参数名称 | 类型 | 是否必须 | 备注 |
---|---|---|---|
Token | String | 是 | API 调用令牌,您申请应用的 Token,放在请求头中 |
请求示例
java
public static void main(String[] args) {
Map<String, Object> params = new HashMap<>(16);
String requestUrl = "https://api.foreocean.com/warning/lastesTsunamiEvents";
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/warning/lastesTsunamiEvents'
headers = {'Token': 'API调用令牌'}
params = {}
response = requests.get(url, headers=headers, params=params)
print(response.text)
返回结果示例
{
"code": "1000", //响应码, 1000-处理成功,其他代码说明请参考API返回错误代码说明
"data": [{
"eventID": "201912151411" //海啸事件编号,根据编号获取海啸具体数据
},
{
"eventID": "201911150017" //海啸事件编号,根据编号获取海啸具体数据
},
{
"eventID": "201911050643" //海啸事件编号,根据编号获取海啸具体数据
},
{
"eventID": "201910310911" //海啸事件编号,根据编号获取海啸具体数据
},
{
"eventID": "201910290904" //海啸事件编号,根据编号获取海啸具体数据
}
],
"msg": "success", //返回信息描述
"success": true //请求是否成功,true-成功,false-失败
}
海啸详情数据
海啸详情数据接口,请求参数由最近 5 次海啸事件列表接口获得
接口地址
https://api.foreocean.com/warning/tsunami
请求方式
GET
请求参数说明
参数名称 | 类型 | 是否必须 | 备注 |
---|---|---|---|
Token | String | 是 | API 调用令牌,您申请应用的 Token,放在请求头中 |
eventID | String | 是 | 海啸事件 ID,最近 5 次海啸事件接口中获得海啸事件 ID |
请求示例
java
public static void main(String[] args) {
Map<String, Object> params = new HashMap<>(16);
params.put("eventID", "201912151411");
String requestUrl = "https://api.foreocean.com/warning/tsunami";
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/warning/tsunami'
headers = {'Token': 'API调用令牌'}
params = {'eventID': '201912151411'}
response = requests.get(url, headers=headers, params=params)
print(response.text)
返回结果示例
{
"code": "1000", //响应码,1000-处理成功,其他代码说明请参考API返回错误代码说明
"data": {
"eventID": "201912151411", //海啸事件ID
"serialNumber": "2", //版本号
"title": "菲律宾棉兰老岛海域地震海啸信息", //警报标题
"warningLevel": "0", //警报级别,0表示Ⅴ级消息无警报,1 表示Ⅳ级蓝色警报,2 表示Ⅲ级黄色警报,3 表示Ⅱ级橙色警报,4 表示Ⅰ级红色警报
"releaseDate": "2019-12-15 14:11:00", //发布时间
"updateDate": "2019-12-15 17:12:03", //更新时间
"content": "2019年12月15日14时11分,菲律宾棉兰老岛海域(6.83 N,125.40 E)发生6.8级地震...", //警报内容
"geom": { //警报落区
"coordinates": [ //海啸发生位置-经纬度
125.40, //经度
6.83 //纬度
],
"type": "Point"
},
"focalDepth": "15.0", //震源深度
"seismicMagnitude": "6.8", //地震震级
},
"msg": "success", //返回信息描述
"success": true //请求是否成功,true-成功,false-失败
}