上述的源码是发送数据的函数,我们可以定时发送HTTPS数据包到丫丫天气服务器中获取相关的信息。
05.网络调式助手模拟实验
首先在百度搜索“域名解析”,我们把api.yytianqi.com域名解析成IP地址,如下图所示:
打开网络调式助手以TCPClient方式连接服务器,如下图所示:
根据上图所示,我们发送给HTTPGET请求,该数据包为
GEThttp://api.yytianqi.com/observe?city=CH010100&key=xxx,
注意:xxx为平台注册的密钥。点击发送该数据包就获取到相应的信息,如下图所示:
根据上图的返回信息,我们可以对比官方提供的返回结果数据包对比,如下所示:
{
"code":1,
"msg":"Sucess",
"counts":2362, //访问的剩余次数。
"data":{
"cityId":"CH010100", //城市id
"cityName":"北京", //城市名称
"lastUpdate":"2016-03-0917:10:00", //实况更新时间
"tq":"多云", //天气现象
"numtq":"01", //天气现象编码
"qw":"5.0", //当前气温
"fl":"微风", //当前风力
"numfl":"0", //当前风力编码
"fx":"无持续风向", //当前风向
"numfx":"0", //当前风向编码
"sd":"10.0" //相对湿度,直接在此数值后添加%即可
}
}
根据上述的源码和上图对比,我们就知道各个字符串代表什么内容。
在我们编写之前,我们必须移植cjSON库,我们可以调用这个库提供的函数获取数据包的信息,如下所示:
定义一个接收数据的结构体: