天气接口优化点:
1.接口每8小时更新一次,机制是 CDN 缓存8小时更新一次。注意:“自己做缓存,因为你每请求我一次,我就是有费用的,又拍云 CDN加速回源是按次收费,你可以了解下”。
2.接口采用城市ID来精准查询请求,具体每个城市对应的ID可以查看下面的文件“city.json”每个城市的city_code字段,如果是"",就是省份不能直接查询天气。
3.如果需要1个小时更新一次的接口,并且支持 https ,需要付费800元,不限次数,永久有效,不足一年按 12 / 8 * 使用月数退款,提供公司盖章收据。
4.每分钟阈值为300次,如果超过会禁用一天。请谨慎使用。
5.增加了独立的年月日字段:ymd 如“2018年12月12日” 原来的date改成了独立的日,如12,增加了独立的星期字段week:如“星期日”,具体看下面返回值说明。
6.天气取消了昨天天气,增加到了15天天气(2019年02月16日更新)
接口自问自答
1、接口能不能 ajax jsonp 的方式调用?
答:不能,必须后端语言,比如 Java 、PHP、C#,PY等。 注:Android,iOS 之类直接调用,我发现后会封掉,建议后端调用。
2、接口每天的更新时间是什么时候?
答:天气更新时间为每天的:3点,8点,13点,19点,所以建议不要凌晨去获取,加上CDN有1个小时的缓存,建议4点,9点,14点,20点后获取。
3、接口稳定吗?
答:应该,也许、如果的话,是稳定的。如果不明白的话,你摸着良心觉得您问的是不是废话。
4、天气有哪些状态?天气图片哪里获取?
答:请加QQ群:608222884 (验证消息“sojson api”),群内有全部的类型和参考文件。此群不收费,不要发广告。
5、提示403是怎么回事?
答:此接口理论上不限制次数,如果你一天需要调用大量,比如几十万次一天必封无疑。几万次也有封的可能性比如一瞬间高并发调用,我会酌情考虑封掉。
6、提示有恶意调用是什么意思?
答:因为你一直循环调用,没有做缓存,对服务器造成了很大的压力,请参照第五点。
新天气接口请求参数:
具体请看下面的city.json文件,下面以天津举例。
{
"_id": 26,
"id": 26,
"pid": 0,//父ID
"city_code": "101030100",//接口需要的city_code
"city_name": "天津"
}
上面不算参数,只是对于city.json 文件说明一下,有用的参数就city_code的值。
那天津对于的ID就是city_code:101030100。
请求链接:http://t.weather.sojson.com/api/weather/city/101030100 就这个链接,然后get请求,不用再带任何参数。请求是restfull风格,city_code 为9位数字。只要拼接在地址 “http://t.weather.sojson.com/api/weather/city/+city_code” 后面即可。
接口返回值:
接口成功返回值:
{
"time": "2018-09-22 12:37:21",//系统更新时间
"cityInfo": {
"city": "天津市", //请求城市
"cityId": "101030100",//请求ID
"parent": "天津", //上级,一般是省份
"updateTime": "12:32"//天气更新时间
},
"date": "20180922", //当前天气的当天日期
"message": "Success !", //返回message
"status": 200, //返回状态
"data": {
"shidu": "22%", //湿度
"pm25": 15.0, //pm2.5
"pm10": 46.0, //pm10
"quality": "优", //空气质量
"wendu": "24", //温度
"ganmao": "各类人群可自由活动",//感冒提醒(指数)
"forecast": [//今天+未来14天
{
"date": "22",
"ymd": "2018-09-22", //年月日 (新增)
"week": "星期六", //星期 (新增)
"sunrise": "05:57",
"high": "高温 26.0℃",
"low": "低温 15.0℃",
"sunset": "18:10",
"aqi": 55.0,
"fx": "西北风",
"fl": "4-5级",
"type": "晴",
"notice": "愿你拥有比阳光明媚的心情"
},
{
"date": "23",
"ymd": "2018-09-22", //年月日 (新增)
"week": "星期日", //星期 (新增)
"sunrise": "05:58",
"high": "高温 23.0℃",
"low": "低温 14.0℃",
"sunset": "18:09",
"aqi": 29.0,
"fx": "西北风",
"fl": "4-5级",
"type": "晴",
"notice": "愿你拥有比阳光明媚的心情"
},
{
"date": "24",
"ymd": "2018-09-22", //年月日 (新增)
"week": "星期一", //星期 (新增)
"sunrise": "05:59",
"high": "高温 24.0℃",
"low": "低温 15.0℃",
"sunset": "18:07",
"aqi": 25.0,
"fx": "西北风",
"fl": "<3级",
"type": "晴",
"notice": "愿你拥有比阳光明媚的心情"
},
{
"date": "25",
"ymd": "2018-09-22", //年月日 (新增)
"week": "星期二", //星期 (新增)
"sunrise": "06:00",
"high": "高温 24.0℃",
"low": "低温 16.0℃",
"sunset": "18:05",
"aqi": 56.0,
"fx": "西南风",
"fl": "<3级",
"type": "晴",
"notice": "愿你拥有比阳光明媚的心情"
},
{
"date": "26",
"ymd": "2018-09-22", //年月日 (新增)
"week": "星期三", //星期 (新增)
"sunrise": "06:01",
"high": "高温 24.0℃",
"low": "低温 17.0℃",
"sunset": "18:04",
"aqi": 86.0,
"fx": "西南风",
"fl": "3-4级",
"type": "阴",
"notice": "不要被阴云遮挡住好心情"
}
]
}
}
参数错误返回值:
{
"time": "2018-09-22 12:45:29",
"message": "CityId不在返回之内。",
"status":403
}
参数数位不对返回值:
{
"message": "Request resource not found.",
"status": 404
}
城市数据:
请看下面附件链接,点击下载不会乱码,打开有可能会乱码。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。