200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 天气API 全国天气 JSON API接口 可以获取五天的天气预报

天气API 全国天气 JSON API接口 可以获取五天的天气预报

时间:2018-06-15 13:25:29

相关推荐

天气API 全国天气 JSON API接口 可以获取五天的天气预报

稳定高效的天气API接口是很少有的,本站前一段时间开发了一个万年历,需要带天气预报,花了几天功夫,集成和容错处理好对外开放的天气接口。天气接口支持返回JSON 和 XML 结果。并且可以获取到昨天,以及今天和未来4天的天气预报。那么下面直接介绍天气预报的接口吧。

天气API详情介绍 在API 中心:/api/weather.html ,下面只介绍下调用方式,然后 用Java 语言调用演示一下。

天气预报 API 接口 JSON返回

public static void json() throws Exception{//参数url化String city = .URLEncoder.encode("北京", "utf-8");//拼地址String apiUrl = String.format("/open/api/weather/json.shtml?city=%s",city);//开始请求URL url= new URL(apiUrl);URLConnection open = url.openConnection();InputStream input = open.getInputStream();//这里转换为String,带上包名,怕你们引错包String result = mons.io.IOUtils.toString(input,"utf-8");//输出System.out.println(result);}

天气预报 JSON 返回值:

{"data": {"yesterday": {"date": "26日星期五","high": "高温 31℃","fx": "南风","low": "低温 17℃","fl": "微风","type": "晴"},"city": "北京","aqi": "83","forecast": [{"date": "27日星期六","high": "高温 34℃","fengli": "微风级","low": "低温 21℃","fengxiang": "西南风","type": "晴"},{"date": "28日星期天","high": "高温 36℃","fengli": "3-4级","low": "低温 22℃","fengxiang": "北风","type": "多云"},{"date": "29日星期一","high": "高温 29℃","fengli": "微风级","low": "低温 18℃","fengxiang": "东风","type": "阴"},{"date": "30日星期二","high": "高温 30℃","fengli": "微风级","low": "低温 18℃","fengxiang": "南风","type": "阴"},{"date": "31日星期三","high": "高温 32℃","fengli": "3-4级","low": "低温 20℃","fengxiang": "南风","type": "多云"}],"ganmao": "各项气象条件适宜,发生感冒机率较低。但请避免长期处于空调房间中,以防感冒。","wendu": "27"},"status": 200,"message": "OK"}

天气预报 API XML返回方式

public static void xml() throws Exception{//参数url化String city = .URLEncoder.encode("北京", "utf-8");//拼地址String apiUrl = String.format("/open/api/weather/xml.shtml?city=%s",city);//开始请求URL url= new URL(apiUrl);URLConnection open = url.openConnection();InputStream input = open.getInputStream();//这里转换为String,带上包名,怕你们引错包String result = mons.io.IOUtils.toString(input,"utf-8");//输出System.out.println(result);}

天气预报 XML返回值:

<?xml version="1.0" encoding="UTF-8"?><resp><city>北京</city><updatetime>13:45</updatetime><wendu>27</wendu><fengli>3级</fengli><shidu>38%</shidu><fengxiang>东风</fengxiang><sunrise_1>04:51</sunrise_1><sunset_1>19:33</sunset_1><sunrise_2></sunrise_2><sunset_2></sunset_2><environment><aqi>83</aqi><pm25>61</pm25><suggest>极少数敏感人群应减少户外活动</suggest><quality>良</quality><MajorPollutants>颗粒物(PM2.5)</MajorPollutants><o3>148</o3><co>1</co><pm10>106</pm10><so2>27</so2><no2>47</no2><time>13:00:00</time></environment><yesterday><date_1>26日星期五</date_1><high_1>高温 31℃</high_1><low_1>低温 17℃</low_1><day_1><type_1>晴</type_1><fx_1>南风</fx_1><fl_1>微风</fl_1></day_1><night_1><type_1>晴</type_1><fx_1>北风</fx_1><fl_1>微风</fl_1></night_1></yesterday><forecast><weather><date>27日星期六</date><high>高温 34℃</high><low>低温 21℃</low><day><type>晴</type><fengxiang>西南风</fengxiang><fengli>微风级</fengli></day><night><type>晴</type><fengxiang>北风</fengxiang><fengli>微风级</fengli></night></weather><weather><date>28日星期天</date><high>高温 36℃</high><low>低温 22℃</low><day><type>多云</type><fengxiang>北风</fengxiang><fengli>3-4级</fengli></day><night><type>阴</type><fengxiang>东北风</fengxiang><fengli>微风级</fengli></night></weather><weather><date>29日星期一</date><high>高温 29℃</high><low>低温 18℃</low><day><type>阴</type><fengxiang>东风</fengxiang><fengli>微风级</fengli></day><night><type>阵雨</type><fengxiang>南风</fengxiang><fengli>微风级</fengli></night></weather><weather><date>30日星期二</date><high>高温 30℃</high><low>低温 18℃</low><day><type>阴</type><fengxiang>南风</fengxiang><fengli>微风级</fengli></day><night><type>多云</type><fengxiang>北风</fengxiang><fengli>微风级</fengli></night></weather><weather><date>31日星期三</date><high>高温 32℃</high><low>低温 20℃</low><day><type>多云</type><fengxiang>南风</fengxiang><fengli>3-4级</fengli></day><night><type>多云</type><fengxiang>南风</fengxiang><fengli>3-4级</fengli></night></weather></forecast><zhishus><zhishu><name>晨练指数</name><value>适宜</value><detail>天气不错,空气清新,是您晨练的大好时机,建议不同年龄段的人们积极参加户外健身活动。</detail></zhishu><zhishu><name>舒适度</name><value>很不舒适</value><detail>白天天气晴好,但烈日炎炎会使您会感到很热,很不舒适。</detail></zhishu><zhishu><name>穿衣指数</name><value>炎热</value><detail>天气炎热,建议着短衫、短裙、短裤、薄型T恤衫等清凉夏季服装。</detail></zhishu><zhishu><name>感冒指数</name><value>少发</value><detail>各项气象条件适宜,发生感冒机率较低。但请避免长期处于空调房间中,以防感冒。</detail></zhishu><zhishu><name>晾晒指数</name><value>极适宜</value><detail>天气不错,极适宜晾晒。抓紧时机把久未见阳光的衣物搬出来晒晒太阳吧!</detail></zhishu><zhishu><name>旅游指数</name><value>较适宜</value><detail>天气较好,感觉有点热,不过有微风伴您一路同行,还是较适宜旅游的,外出请注意防晒哦!</detail></zhishu><zhishu><name>紫外线强度</name><value>很强</value><detail>紫外线辐射极强,建议涂擦SPF20以上、PA++的防晒护肤品,尽量避免暴露于日光下。</detail></zhishu><zhishu><name>洗车指数</name><value>较适宜</value><detail>较适宜洗车,未来一天无雨,风力较小,擦洗一新的汽车至少能保持一天。</detail></zhishu><zhishu><name>运动指数</name><value>较适宜</value><detail>天气较好,户外运动请注意防晒。推荐您进行室内运动。</detail></zhishu><zhishu><name>约会指数</name><value>较不适宜</value><detail>天气较热,建议尽量不要去室外约会,如果外出,请您挑选荫凉的地点。</detail></zhishu><zhishu><name>雨伞指数</name><value>不带伞</value><detail>天气较好,您在出门的时候无须带雨伞。</detail></zhishu></zhishus></resp><!-- 10.10.162.42(10.10.162.42):38553 ; 10.10.156.163:8080 -->

注意的一点就是,参数中文要转码。要url转码。 Java 如下:

//参数url化String city = .URLEncoder.encode("北京", "utf-8");

还有一点就是,编码为UTF-8

本站使用的Demo,是在万年历功能使用,下面是截图。

万年历:/time/wannianli.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。