【小编推荐】太原APP开发调用天气接口

2015-08-25   |   发布者:梁国芳   |   查看:3320次

app开发
 接口地址:http://op.juhe.cn/onebox/weather/query
支持格式:JSON/XML
请求方式:HTTP GET/POST
请求示例:http://op.juhe.cn/onebox/weather/query?cityname=%E6%B8%A9%E5%B7%9E&key=您申请的KEY
接口备注:根据城市查询天气,未来7天、生活指数、PM2.5
请求参数:
  名称 类型 必填 说明
  cityname string 要查询的城市,如:温州、上海、北京
  key string 应用APPKEY(应用详细页查询)
  dtype string 返回数据的格式,xml或json,默认json
调用样例及调试工具:
  API测试工具 
返回字段:
  名称 类型 说明
  error_code int 返回码
  reason string 返回说明
  result string 返回结果集
JSON返回示例:
{
    "reason": "查询成功",
    "result": {
        "data": {
            "realtime": {
                "city_code": "101210701",
                "city_name": "温州",     /*城市*/
                "date": "2014-10-15",  /*日期*/
                "time": "09:00:00",     /*更新时间*/
                "week": 3,
                "moon": "九月廿二",
                "dataUptime": 1413337811,
                "weather": {    /*当前实况天气*/
                    "temperature": "19",     /*温度*/
                    "humidity": "54",     /*湿度*/
                    "info": "雾",
                    "img": "18"
                },
                "wind": {
                    "direct": "北风",
                    "power": "1级",
                    "offset": null,
                    "windspeed": null
                }
            },
            "life": {     /*生活指数*/
                "date": "2014-10-15",
                "info": {
                    "chuanyi": [     /*穿衣指数*/
                        "较舒适",
                        "建议着薄外套或牛仔衫裤等服装。年老体弱者宜着夹克衫、薄毛衣等。昼夜温差较大,注意适当增减衣服。"
                    ],
                    "ganmao": [    /*感冒指数*/
                        "较易发",
                        "昼夜温差较大,较易发生感冒,请适当增减衣服。体质较弱的朋友请注意防护。"
                    ],
                    "kongtiao": [   /*空调指数*/
                        "较少开启",
                        "您将感到很舒适,一般不需要开启空调。"
                    ],
                    "wuran": [     /*污染指数*/
                        "良",
                        "气象条件有利于空气污染物稀释、扩散和清除,可在室外正常活动。"
                    ],
                    "xiche": [     /*洗车指数*/
                        "较适宜",
                        "较适宜洗车,未来一天无雨,风力较小,擦洗一新的汽车至少能保持一天。"
                    ],
                    "yundong": [     /*运动指数*/
                        "较适宜",
                        "天气较好,但风力较大,推荐您进行室内运动,若在户外运动请注意防风。"
                    ],
                    "ziwaixian": [   /*紫外线*/
                        "中等",
                        "属中等强度紫外线辐射天气,外出时建议涂擦SPF高于15、PA+的防晒护肤品,戴帽子、太阳镜。"
                    ]
                }
            },
            "weather": [   /*未来几天天气预报*/
                {
                    "date": "2014-10-15",
                    "info": {
                        "day": [     /*白天天气*/
                            "0",     /*天气ID*/
                            "晴",     /*天气*/
                            "24",     /*高温*/
                            "东北风",     /*风向*/
                            "3-4 级"      /*风力*/
                        ],
                        "night": [    /*夜间天气*/
                            "0",
                            "晴",
                            "13",
                            "东北风",
                            "3-4 级"
                        ]
                    },
                    "week": "三",
                    "nongli": "九月廿二"
                },
                {
                    "date": "2014-10-16",
                    "info": {
                        "dawn": [
                            "0",
                            "晴",
                            "13",
                            "东北风",
                            "3-4 级"
                        ],
                        "day": [
                            "0",
                            "晴",
                            "25",
                            "东北风",
                            "3-4 级"
                        ],
                        "night": [
                            "1",
                            "多云",
                            "15",
                            "东北风",
                            "3-4 级"
                        ]
                    },
                    "week": "四",
                    "nongli": "九月廿三"
                },
                {
                    "date": "2014-10-17",
                    "info": {
                        "dawn": [
                            "1",
                            "多云",
                            "15",
                            "东北风",
                            "3-4 级"
                        ],
                        "day": [
                            "1",
                            "多云",
                            "26",
                            "东北风",
                            "3-4 级"
                        ],
                        "night": [
                            "1",
                            "多云",
                            "16",
                            "东北风",
                            "3-4 级"
                        ]
                    },
                    "week": "五",
                    "nongli": "九月廿四"
                },
                {
                    "date": "2014-10-18",
                    "info": {
                        "dawn": [
                            "1",
                            "多云",
                            "16",
                            "东北风",
                            "3-4 级"
                        ],
                        "day": [
                            "1",
                            "多云",
                            "26",
                            "东风",
                            "3-4 级"
                        ],
                        "night": [
                            "1",
                            "多云",
                            "18",
                            "东风",
                            "3-4 级"
                        ]
                    },
                    "week": "六",
                    "nongli": "九月廿五"
                },
                {
                    "date": "2014-10-19",
                    "info": {
                        "dawn": [
                            "1",
                            "多云",
                            "18",
                            "东风",
                            "3-4 级"
                        ],
                        "day": [
                            "1",
                            "多云",
                            "27",
                            "东风",
                            "3-4 级"
                        ],
                        "night": [
                            "1",
                            "多云",
                            "19",
                            "东南风",
                            "3-4 级"
                        ]
                    },
                    "week": "日",
                    "nongli": "九月廿六"
                },
                {
                    "date": "2014-10-20",
                    "info": {
                        "dawn": [
                            "1",
                            "多云",
                            "19",
                            "东南风",
                            "3-4 级"
                        ],
                        "day": [
                            "1",
                            "多云",
                            "27",
                            "东南风",
                            "3-4 级"
                        ],
                        "night": [
                            "2",
                            "阴",
                            "18",
                            "南风",
                            "3-4 级"
                        ]
                    },
                    "week": "一",
                    "nongli": "九月廿七"
                },
                {
                    "date": "2014-10-21",
                    "info": {
                        "dawn": [
                            "2",
                            "阴",
                            "18",
                            "南风",
                            "3-4 级"
                        ],
                        "day": [
                            "1",
                            "多云",
                            "26",
                            "东北风",
                            "3-4 级"
                        ],
                        "night": [
                            "2",
                            "阴",
                            "17",
                            "",
                            "微风"
                        ]
                    },
                    "week": "二",
                    "nongli": "九月廿八"
                }
            ],
            "pm25": {    /*PM2.5*/
                "key": "Wenzhou",
                "show_desc": 0,
                "pm25": {
                    "curPm": "97",
                    "pm25": "72",
                    "pm10": "97",
                    "level": 2,
                    "quality": "良",
                    "des": "可以接受的,除极少数对某种污染物特别敏感的人以外,对公众健康没有危害。"
                },
                "dateTime": "2014年10月15日09时",
                "cityName": "温州"
            },
            "date": null,
            "isForeign": 0
        }
    },
    "error_code": 0
}

示例代码:function getBanner() {
			api.showProgress({
				title : '加载中...',
				modal : false
			});
			api.ajax({
				url : 'http://op.juhe.cn/onebox/weather/query?cityname=太原&key=40666f4d80006e77d1d6ed5bfde3004c',
				method : 'get',
				timeout : 30,
				dataType : 'json',
				returnAll : false,
				
			}, function(ret, err) {
				if (ret) {
					var urlJson = JSON.stringify(ret);
					 //api.alert({msg: urlJson});
					//alert(ret.result.data.life.info.chuanyi);
						var htmll = '<p>城市'+ret.result.data.realtime.city_name+'</p>'+ret.result.data.realtime.weather.temperature+'度'+ret.result.data.realtime.weather.info+'<p>'+ret.result.data.realtime.wind.direct+'</p>'+ret.result.data.life.info.chuanyi+'<p>'+ret.result.data.realtime.date+'星期'+ret.result.data.realtime.week+'</p>';
						$api.append($api.byId('weather'), htmll);
					
					//initSlide();
				} else {
					api.alert({
						msg : ('错误码:' + err.code + ';错误信息:' + err.msg + '网络状态码:' + err.statusCode)
					});
				};
			});
		}