对方服务器改了host,代码估计也更了,这个项目已经过时了,但http报文分析的流程是永不过时的。希望能够帮助到大家。
本文谨为对上海微摇网络科技有限公司出品的高校体育(Android App)的接口分析与测试。
感谢CSDN用户@留白大人的BLOG,感谢GITHUB用户@RyuBAI的开源分享和某不愿透露姓名的同学的指导。
对几个接口进行分析。
分析与测试过程不难,都是基本的网络应用层知识与技术。之后会写一些“一键跑步”的程序
on my X270 Windows10 1809
Fidder v5.0.20182.28034 for .NET 4.6.1
Android emulator Pixel Android Version 9
高校体育 Android 2.2.5 10-10日
模拟器的网络卡了我很久
这个IP地址你得自己琢磨一下。
配置好以后上网应该如图:
这表明我们的模拟器被Fidder监听了。
在分析阶段我们只分析每个接口的Header,request和response。
所有接口里的sign都是一串看不懂的乱码,经过BLOG的指导(所以相关图片就不放了,移步ta的blog看ta如何破解这个问题的),发现它是对data的MD5(salt)加密,但salt竟然是一个固定的字符串,这是贵司致命的一个问题,以至于攻击者可以在接口上做很多事情。
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken:
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
3
分析:
versionName,versionCode,platform,xxversionxx可能会被filter,即不同的版本、平台对应不同的业务逻辑;uuid是一个设备的唯一标志;utoken是一个token,我们截取的是login请求的header,login请求成功后服务端会给用户发一个utoken,具体它有什么用我们还不知道(我一直觉得这是用来校验用户身份,登陆情况的,结果有朋友怀疑,朋友自己也测试了,后面再说);BDA9F42E0C8A294ECDF5CC72AAE6A701是一个莫名其妙的字段,经过一些测试,它有时候会是0,0,0,0,1,之前测试发现是0,0,0,0,0,不知道什么含义;host是服务端主机域名;Cookie,和utoken一样关键,解决这些会变的参数的获取后就能完成API调用的自动化。
GET http://gxhttp.chinacloudapp.cn/api/reg/login?sign=ce688e7d0b2d0ea89a4a902cc79f1fda&data=%7B%22info%22%3A%22B4D724F9EB50E6ED3DF5B571CCD7D4A8%22%2C%22mobile%22%3A%2213917008840%22%2C%22password%22%3A%22123456%22%2C%22type%22%3A%22AndroidSDKbuiltforx86%22%7D HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken:
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
解析参数data并格式化后发现:
{
"info": "B4D724F9EB50E6ED3DF5B571CCD7D4A8",
#手机号不暴露给大家啦
"mobile": "1391700****",
"password": "123456",
"type": "AndroidSDKbuiltforx86"
}
结论:
不知道info是什么,经过了某种加密或者编码;我们的手机号,密码都是明文传输的,很不安全;type是设备类型。
HTTP/1.1 200 OK
Date: Thu, 11 Oct 2018 14:57:00 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.6.30
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Seq: 5bbf64bcbfb9b
Connection: close
Content-Length: 353
Content-Type: text/html; charset=UTF-8
{"code":"200","msg":"登录成功","data":{"userid":"155796","school":"上海海洋大学","schoolId":"82","signature":"","username":"小哥哥教我写代码好吗","photo":"http:\/\/gxhttp.chinacloudapp.cn\/static\/images\/auto.jpg","goal":"60.00","surplus":"60.00","last_time":"","teacher":"","course":"","utoken":"4f91e29802ba4fa2ede29d0f90619282"}}
解析参数data并格式化后发现:
{
"code": "200",
"msg": "登录成功",
"data": {
"userid": "155796",
"school": "上海海洋大学",
"schoolId": "82",
"signature": "",
"username": "小哥哥教我写代码好吗",
"photo": "http:\/\/gxhttp.chinacloudapp.cn\/static\/images\/auto.jpg",
"goal": "60.00",
"surplus": "60.00",
"last_time": "",
"teacher": "",
"course": "",
"utoken": "4f91e29802ba4fa2ede29d0f90619282"
}
}
分析:
utoken这个时候从服务端发过来了;userid是唯一用户标志;
GET http://gxhttp.chinacloudapp.cn/api/run/runPage?sign=3c199389438ec886406e291e5f36037c&data=%7B%22initLocation%22%3A%22121.92209571503255%2C30.869519006815654%22%2C%22type%22%3A%221%22%2C%22userid%22%3A%22155796%22%7D HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken: 4f91e29802ba4fa2ede29d0f90619282
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
解析参数data并格式化后发现:
{
"initLocation": "121.92209571503255,30.869519006815654",
"type": "1",
"userid": "155796"
}
分析:
把我现在的位置给传了哈;
HTTP/1.1 200 OK
Date: Thu, 11 Oct 2018 15:13:21 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.6.30
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Seq: 5bbf6891621dc
Content-Length: 84
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: application/json
{"msg":"非学校规定运动时间段,您可以选择“自由跑”","code":404}
解析并格式化:
{
"msg": "非学校规定运动时间段,您可以选择“自由跑”",
"code": 404
}
分析:
我佛了,现在2018年10月11日23:16:46,超过10点,不给我跑体育锻炼啦!(所以我先写到这里……明天继续……)
2018年10月12日13:02:13 我回来了 --------------------------------------------------------------------------------------------
GET http://gxhttp.chinacloudapp.cn/api/run/runPage?sign=1fbb365d8f34abcb08b7fbc567c2bfc3&data=%7B%22initLocation%22%3A%22-122.084082%2C37.422075%22%2C%22type%22%3A%221%22%2C%22userid%22%3A%22155796%22%7D HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken: 4f91e29802ba4fa2ede29d0f90619282
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
解析并格式化参数:
{
"initLocation": "-122.084082,37.422075",
"type": "1",
"userid": "155796"
}
分析:
HTTP/1.1 200 OK
Date: Fri, 12 Oct 2018 05:16:16 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.6.30
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Seq: 5bc02e202cff6
Content-Length: 866
Keep-Alive: timeout=15, max=99
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
{"code":"200","msg":"获取成功","data":{"beaconcount":1,"beaconsinfo":[],"gpscount":2,"distance":20,"peisu":600,"gpsinfo":[{"latitude":"30.8858690000","longitude":"121.9000200000"},{"latitude":"30.8829940000","longitude":"121.9014370000"},{"latitude":"30.8827890000","longitude":"121.9032190000"},{"latitude":"30.8806310000","longitude":"121.8929770000"}],"length":"1.50","dayTarget":"1.50","ibeacon":[{"name":"shhy100006","type":1,"number":"shhy100006","position":{"latitude":"30.8818340000","longitude":"121.8991570000"},"id":"736","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00006"},{"name":"shhy100015","type":1,"number":"shhy100015","position":{"latitude":"30.8868180000","longitude":"121.8979010000"},"id":"745","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00015"}],"runPageId":6971323,"maxSeconds":"0"}}
解析并格式化:
{
"code": "200",
"msg": "获取成功",
"data": {
"beaconcount": 1,
"beaconsinfo": [],
"gpscount": 2,
"distance": 20,
"peisu": 600,
"gpsinfo": [{
"latitude": "30.8858690000",
"longitude": "121.9000200000"
}, {
"latitude": "30.8829940000",
"longitude": "121.9014370000"
}, {
"latitude": "30.8827890000",
"longitude": "121.9032190000"
}, {
"latitude": "30.8806310000",
"longitude": "121.8929770000"
}],
"length": "1.50",
"dayTarget": "1.50",
"ibeacon": [{
"name": "shhy100006",
"type": 1,
"number": "shhy100006",
"position": {
"latitude": "30.8818340000",
"longitude": "121.8991570000"
},
"id": "736",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00006"
}, {
"name": "shhy100015",
"type": 1,
"number": "shhy100015",
"position": {
"latitude": "30.8868180000",
"longitude": "121.8979010000"
},
"id": "745",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00015"
}],
"runPageId": 6971323,
"maxSeconds": "0"
}
}
分析:
gpsinfo字段是个数组,里面有4个经纬度坐标,经过比对发现是4个选到点,传这些数据是为了在地图上渲染出选到点并在最后上传跑步信息的时候放到对应位置去;ibeacon字段也是个数组,里面2个包含经纬度坐标的对象,经过对比发现是2个必到点:必到点对象包括:name(以学校为前缀数字为后缀的字符串),type(可能自由跑不是1是2吧),number(不明含义),id(唯一标志),uuid(不明含义,我收到的必到点的uuid都是一样的),major,minor都不明含义;最关键的是“runPageId”,这是服务器发给我们的关于一次体育锻炼的唯一标志,我们自己没法生成,要靠它来进行数据的上传,上传过的runPageId就作废了。
POST http://gxhttp.chinacloudapp.cn/api/run/saveRunV2 HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken: 4f91e29802ba4fa2ede29d0f90619282
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Content-Type: application/x-www-form-urlencoded
Content-Length: 14486
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
sign=dfc82a560078aaf7e83e3b4097af696b&data=%7B%22bNode%22%3A%5B%5D%2C%22buPin%22%3A%220.0%22%2C%22duration%22%3A%22651%22%2C%22endTime%22%3A%222018-10-12%2005%3A27%3A21%22%2C%22frombp%22%3A%220%22%2C%22goal%22%3A%221.50%22%2C%22real%22%3A%222080.5564%22%2C%22runPageId%22%3A%226971323%22%2C%22speed%22%3A%2205%5Cu002712%5Cu0027%5Cu0027%22%2C%22startTime%22%3A%222018-10-12%2005%3A16%3A15%22%2C%22tNode%22%3A%5B%5D%2C%22totalNum%22%3A%220%22%2C%22track%22%3A%5B%7B%22latitude%22%3A30.869519006815654%2C%22longitude%22%3A121.92209571503255%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865014722558694%2C%22longitude%22%3A121.92209538907402%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865214838728928%2C%22longitude%22%3A121.92209540355543%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86531489681845%2C%22longitude%22%3A121.92209541079615%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865515013006245%2C%22longitude%22%3A121.9220954252776%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865615071104532%2C%22longitude%22%3A121.92209543251835%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865816854944928%2C%22longitude%22%3A121.92209544712051%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86591691305199%2C%22longitude%22%3A121.92209545436127%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866117029274836%2C%22longitude%22%3A121.9220954688428%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86621708739061%2C%22longitude%22%3A121.92209547608357%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866417203630842%2C%22longitude%22%3A121.92209549056514%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866517261755288%2C%22longitude%22%3A121.92209549780593%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866715710377314%2C%22longitude%22%3A121.92209551216685%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866815768510357%2C%22longitude%22%3A121.92209551940766%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86701588478508%2C%22longitude%22%3A121.9220955338893%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867115942926745%2C%22longitude%22%3A121.92209554113013%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867317726854484%2C%22longitude%22%3A121.92209555573248%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867417785004786%2C%22longitude%22%3A121.92209556297333%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86761790131395%2C%22longitude%22%3A121.92209557745504%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86771795947281%2C%22longitude%22%3A121.92209558469591%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867918075799054%2C%22longitude%22%3A121.92209559917767%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868018133966448%2C%22longitude%22%3A121.92209560641855%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86821658267348%2C%22longitude%22%3A121.92209562077966%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86831664084931%2C%22longitude%22%3A121.92209562802056%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868516757209463%2C%22longitude%22%3A121.92209564250238%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86861681539376%2C%22longitude%22%3A121.9220956497433%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868818599407334%2C%22longitude%22%3A121.92209566434585%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868918657600123%2C%22longitude%22%3A121.92209567158679%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869118773994114%2C%22longitude%22%3A121.92209568606869%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869218832195305%2C%22longitude%22%3A121.92209569330964%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869418948606086%2C%22longitude%22%3A121.92209570779157%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869519006815654%2C%22longitude%22%3A121.92209571503255%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865014722558694%2C%22longitude%22%3A121.92209538907402%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865114780642347%2C%22longitude%22%3A121.92209539631472%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86531489681845%2C%22longitude%22%3A121.92209541079615%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865414954910886%2C%22longitude%22%3A121.92209541803688%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865515013006245%2C%22longitude%22%3A121.9220954252776%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865615071104532%2C%22longitude%22%3A121.92209543251835%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86571512920572%2C%22longitude%22%3A121.92209543975909%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86591691305199%2C%22longitude%22%3A121.92209545436127%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86601697116196%2C%22longitude%22%3A121.92209546160203%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86621708739061%2C%22longitude%22%3A121.92209547608357%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866317145509274%2C%22longitude%22%3A121.92209548332436%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866517261755288%2C%22longitude%22%3A121.92209549780593%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866615652247145%2C%22longitude%22%3A121.92209550492605%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866815768510357%2C%22longitude%22%3A121.92209551940766%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866915826646288%2C%22longitude%22%3A121.92209552664848%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867115942926745%2C%22longitude%22%3A121.92209554113013%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86721600107128%2C%22longitude%22%3A121.92209554837096%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867417785004786%2C%22longitude%22%3A121.92209556297333%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86751784315794%2C%22longitude%22%3A121.92209557021418%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86771795947281%2C%22longitude%22%3A121.92209558469591%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867818017634512%2C%22longitude%22%3A121.92209559193678%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868018133966448%2C%22longitude%22%3A121.92209560641855%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86811652450047%2C%22longitude%22%3A121.92209561353876%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86831664084931%2C%22longitude%22%3A121.92209562802056%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86841669902797%2C%22longitude%22%3A121.92209563526146%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86861681539376%2C%22longitude%22%3A121.9220956497433%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86871687358088%2C%22longitude%22%3A121.92209565698423%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868918657600123%2C%22longitude%22%3A121.92209567158679%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86901871579572%2C%22longitude%22%3A121.92209567882773%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869218832195305%2C%22longitude%22%3A121.92209569330964%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.8693188903993%2C%22longitude%22%3A121.9220957005506%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869519006815654%2C%22longitude%22%3A121.92209571503255%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865014722558694%2C%22longitude%22%3A121.92209538907402%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865114780642347%2C%22longitude%22%3A121.92209539631472%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86531489681845%2C%22longitude%22%3A121.92209541079615%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865414954910886%2C%22longitude%22%3A121.92209541803688%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865615071104532%2C%22longitude%22%3A121.92209543251835%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86571512920572%2C%22longitude%22%3A121.92209543975909%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86591691305199%2C%22longitude%22%3A121.92209545436127%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86601697116196%2C%22longitude%22%3A121.92209546160203%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86621708739061%2C%22longitude%22%3A121.92209547608357%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866317145509274%2C%22longitude%22%3A121.92209548332436%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866517261755288%2C%22longitude%22%3A121.92209549780593%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866615652247145%2C%22longitude%22%3A121.92209550492605%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866815768510357%2C%22longitude%22%3A121.92209551940766%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866915826646288%2C%22longitude%22%3A121.92209552664848%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867115942926745%2C%22longitude%22%3A121.92209554113013%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86721600107128%2C%22longitude%22%3A121.92209554837096%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867417785004786%2C%22longitude%22%3A121.92209556297333%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86751784315794%2C%22longitude%22%3A121.92209557021418%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86771795947281%2C%22longitude%22%3A121.92209558469591%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867818017634512%2C%22longitude%22%3A121.92209559193678%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868018133966448%2C%22longitude%22%3A121.92209560641855%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86811652450047%2C%22longitude%22%3A121.92209561353876%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86831664084931%2C%22longitude%22%3A121.92209562802056%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86841669902797%2C%22longitude%22%3A121.92209563526146%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86861681539376%2C%22longitude%22%3A121.9220956497433%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86871687358088%2C%22longitude%22%3A121.92209565698423%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868918657600123%2C%22longitude%22%3A121.92209567158679%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86901871579572%2C%22longitude%22%3A121.92209567882773%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869218832195305%2C%22longitude%22%3A121.92209569330964%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.8693188903993%2C%22longitude%22%3A121.9220957005506%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869519006815654%2C%22longitude%22%3A121.92209571503255%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865014722558694%2C%22longitude%22%3A121.92209538907402%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865114780642347%2C%22longitude%22%3A121.92209539631472%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865214838728928%2C%22longitude%22%3A121.92209540355543%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86531489681845%2C%22longitude%22%3A121.92209541079615%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865414954910886%2C%22longitude%22%3A121.92209541803688%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.865615071104532%2C%22longitude%22%3A121.92209543251835%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86571512920572%2C%22longitude%22%3A121.92209543975909%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86591691305199%2C%22longitude%22%3A121.92209545436127%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86601697116196%2C%22longitude%22%3A121.92209546160203%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86621708739061%2C%22longitude%22%3A121.92209547608357%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866317145509274%2C%22longitude%22%3A121.92209548332436%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866517261755288%2C%22longitude%22%3A121.92209549780593%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866615652247145%2C%22longitude%22%3A121.92209550492605%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866815768510357%2C%22longitude%22%3A121.92209551940766%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.866915826646288%2C%22longitude%22%3A121.92209552664848%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867115942926745%2C%22longitude%22%3A121.92209554113013%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86721600107128%2C%22longitude%22%3A121.92209554837096%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867417785004786%2C%22longitude%22%3A121.92209556297333%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86751784315794%2C%22longitude%22%3A121.92209557021418%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86771795947281%2C%22longitude%22%3A121.92209558469591%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.867818017634512%2C%22longitude%22%3A121.92209559193678%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868018133966448%2C%22longitude%22%3A121.92209560641855%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86811652450047%2C%22longitude%22%3A121.92209561353876%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86831664084931%2C%22longitude%22%3A121.92209562802056%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86841669902797%2C%22longitude%22%3A121.92209563526146%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86861681539376%2C%22longitude%22%3A121.9220956497433%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86871687358088%2C%22longitude%22%3A121.92209565698423%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.868918657600123%2C%22longitude%22%3A121.92209567158679%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.86901871579572%2C%22longitude%22%3A121.92209567882773%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869218832195305%2C%22longitude%22%3A121.92209569330964%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.8693188903993%2C%22longitude%22%3A121.9220957005506%2C%22speed%22%3A0.0%7D%2C%7B%22latitude%22%3A30.869519006815654%2C%22longitude%22%3A121.92209571503255%2C%22speed%22%3A0.0%7D%5D%2C%22trend%22%3A%5B%7B%22x%22%3A0.0%2C%22y%22%3A50.033333%7D%2C%7B%22x%22%3A0.1%2C%22y%22%3A50.716667%7D%2C%7B%22x%22%3A0.2%2C%22y%22%3A51.033333%7D%2C%7B%22x%22%3A0.3%2C%22y%22%3A50.633335%7D%2C%7B%22x%22%3A0.4%2C%22y%22%3A51.283333%7D%2C%7B%22x%22%3A0.5%2C%22y%22%3A50.3%7D%2C%7B%22x%22%3A0.6%2C%22y%22%3A50.333332%7D%2C%7B%22x%22%3A0.7%2C%22y%22%3A50.083332%7D%2C%7B%22x%22%3A0.8%2C%22y%22%3A50.166668%7D%2C%7B%22x%22%3A0.9%2C%22y%22%3A50.3%7D%2C%7B%22x%22%3A1.0%2C%22y%22%3A68.15%7D%2C%7B%22x%22%3A1.1%2C%22y%22%3A50.95%7D%2C%7B%22x%22%3A1.2%2C%22y%22%3A50.55%7D%2C%7B%22x%22%3A1.3%2C%22y%22%3A50.683334%7D%2C%7B%22x%22%3A1.4%2C%22y%22%3A50.75%7D%2C%7B%22x%22%3A1.5%2C%22y%22%3A50.5%7D%2C%7B%22x%22%3A1.6%2C%22y%22%3A50.916668%7D%2C%7B%22x%22%3A1.7%2C%22y%22%3A50.233334%7D%2C%7B%22x%22%3A1.8%2C%22y%22%3A50.516666%7D%2C%7B%22x%22%3A1.9%2C%22y%22%3A50.483334%7D%2C%7B%22x%22%3A2.0%2C%22y%22%3A50.216667%7D%2C%7B%22x%22%3A2.1%2C%22y%22%3A49.716667%7D%5D%2C%22type%22%3A%221%22%2C%22userid%22%3A%22155796%22%7D
body里有参数sign和data,sign前面分析过
现在来解析data:
因为这个JSON实在是太长了,所以分析就写在前面吧:
bNode字段是必经点数组,跑步经过的必经点会被放到这个数组中;bupin字段是用户看到的“步频”;duration字段是用户看到的耗时,不过这里是以秒为单位存储的;endTime是跑步结束时间;frombp不明含义;goal是用户需要跑到的距离目标,男生是2.00,女生是1.50,单位是km;real是用户实际跑的距离,这里的距离应该是用n个经纬度坐标点算出来的,runPageId就是前文提到的,一次体育锻炼的唯一标志;speed是在用户端算出来的一个速度,公式为:real/duration;startTime是开始时间;tNode是选过点数组,跑步经过的选过点会被放到这个数组中,这里由于我是用模拟器模拟的,所以选过点和必过点都是空的,后面会给大家看真实数据;totalNum不明含义;track是经过点数组,用户端每隔一段时间会采集用户位置;trend字段用来在在地图上渲染速度快慢用的(但是在我的安卓实体机:坚果pro2上是看不到的),我不太懂里面数据的含义,在此不赘述,这些数据也无伤大雅;最后的type是体育锻炼/自由跑;userid是用户id;
上面看到乱码data是因为经过了urlencode……
sign=dfc82a560078aaf7e83e3b4097af696b
data=
{
"bNode": [],
"buPin": "0.0",
"duration": "651",
"endTime": "2018-10-12 05:27:21",
"frombp": "0",
"goal": "1.50",
"real": "2080.5564",
"runPageId": "6971323",
"speed": "05'12''",
"startTime": "2018-10-12 05:16:15",
"tNode": [],
"totalNum": "0",
"track": [{
"latitude": 30.869519006815654,
"longitude": 121.92209571503255,
"speed": 0.0
}, {
"latitude": 30.865014722558694,
"longitude": 121.92209538907402,
"speed": 0.0
}, {
"latitude": 30.865214838728928,
"longitude": 121.92209540355543,
"speed": 0.0
}, {
"latitude": 30.86531489681845,
"longitude": 121.92209541079615,
"speed": 0.0
}, {
"latitude": 30.865515013006245,
"longitude": 121.9220954252776,
"speed": 0.0
}, {
"latitude": 30.865615071104532,
"longitude": 121.92209543251835,
"speed": 0.0
}, {
"latitude": 30.865816854944928,
"longitude": 121.92209544712051,
"speed": 0.0
}, {
"latitude": 30.86591691305199,
"longitude": 121.92209545436127,
"speed": 0.0
}, {
"latitude": 30.866117029274836,
"longitude": 121.9220954688428,
"speed": 0.0
}, {
"latitude": 30.86621708739061,
"longitude": 121.92209547608357,
"speed": 0.0
}, {
"latitude": 30.866417203630842,
"longitude": 121.92209549056514,
"speed": 0.0
}, {
"latitude": 30.866517261755288,
"longitude": 121.92209549780593,
"speed": 0.0
}, {
"latitude": 30.866715710377314,
"longitude": 121.92209551216685,
"speed": 0.0
}, {
"latitude": 30.866815768510357,
"longitude": 121.92209551940766,
"speed": 0.0
}, {
"latitude": 30.86701588478508,
"longitude": 121.9220955338893,
"speed": 0.0
}, {
"latitude": 30.867115942926745,
"longitude": 121.92209554113013,
"speed": 0.0
}, {
"latitude": 30.867317726854484,
"longitude": 121.92209555573248,
"speed": 0.0
}, {
"latitude": 30.867417785004786,
"longitude": 121.92209556297333,
"speed": 0.0
}, {
"latitude": 30.86761790131395,
"longitude": 121.92209557745504,
"speed": 0.0
}, {
"latitude": 30.86771795947281,
"longitude": 121.92209558469591,
"speed": 0.0
}, {
"latitude": 30.867918075799054,
"longitude": 121.92209559917767,
"speed": 0.0
}, {
"latitude": 30.868018133966448,
"longitude": 121.92209560641855,
"speed": 0.0
}, {
"latitude": 30.86821658267348,
"longitude": 121.92209562077966,
"speed": 0.0
}, {
"latitude": 30.86831664084931,
"longitude": 121.92209562802056,
"speed": 0.0
}, {
"latitude": 30.868516757209463,
"longitude": 121.92209564250238,
"speed": 0.0
}, {
"latitude": 30.86861681539376,
"longitude": 121.9220956497433,
"speed": 0.0
}, {
"latitude": 30.868818599407334,
"longitude": 121.92209566434585,
"speed": 0.0
}, {
"latitude": 30.868918657600123,
"longitude": 121.92209567158679,
"speed": 0.0
}, {
"latitude": 30.869118773994114,
"longitude": 121.92209568606869,
"speed": 0.0
}, {
"latitude": 30.869218832195305,
"longitude": 121.92209569330964,
"speed": 0.0
}, {
"latitude": 30.869418948606086,
"longitude": 121.92209570779157,
"speed": 0.0
}, {
"latitude": 30.869519006815654,
"longitude": 121.92209571503255,
"speed": 0.0
}, {
"latitude": 30.865014722558694,
"longitude": 121.92209538907402,
"speed": 0.0
}, {
"latitude": 30.865114780642347,
"longitude": 121.92209539631472,
"speed": 0.0
}, {
"latitude": 30.86531489681845,
"longitude": 121.92209541079615,
"speed": 0.0
}, {
"latitude": 30.865414954910886,
"longitude": 121.92209541803688,
"speed": 0.0
}, {
"latitude": 30.865515013006245,
"longitude": 121.9220954252776,
"speed": 0.0
}, {
"latitude": 30.865615071104532,
"longitude": 121.92209543251835,
"speed": 0.0
}, {
"latitude": 30.86571512920572,
"longitude": 121.92209543975909,
"speed": 0.0
}, {
"latitude": 30.86591691305199,
"longitude": 121.92209545436127,
"speed": 0.0
}, {
"latitude": 30.86601697116196,
"longitude": 121.92209546160203,
"speed": 0.0
}, {
"latitude": 30.86621708739061,
"longitude": 121.92209547608357,
"speed": 0.0
}, {
"latitude": 30.866317145509274,
"longitude": 121.92209548332436,
"speed": 0.0
}, {
"latitude": 30.866517261755288,
"longitude": 121.92209549780593,
"speed": 0.0
}, {
"latitude": 30.866615652247145,
"longitude": 121.92209550492605,
"speed": 0.0
}, {
"latitude": 30.866815768510357,
"longitude": 121.92209551940766,
"speed": 0.0
}, {
"latitude": 30.866915826646288,
"longitude": 121.92209552664848,
"speed": 0.0
}, {
"latitude": 30.867115942926745,
"longitude": 121.92209554113013,
"speed": 0.0
}, {
"latitude": 30.86721600107128,
"longitude": 121.92209554837096,
"speed": 0.0
}, {
"latitude": 30.867417785004786,
"longitude": 121.92209556297333,
"speed": 0.0
}, {
"latitude": 30.86751784315794,
"longitude": 121.92209557021418,
"speed": 0.0
}, {
"latitude": 30.86771795947281,
"longitude": 121.92209558469591,
"speed": 0.0
}, {
"latitude": 30.867818017634512,
"longitude": 121.92209559193678,
"speed": 0.0
}, {
"latitude": 30.868018133966448,
"longitude": 121.92209560641855,
"speed": 0.0
}, {
"latitude": 30.86811652450047,
"longitude": 121.92209561353876,
"speed": 0.0
}, {
"latitude": 30.86831664084931,
"longitude": 121.92209562802056,
"speed": 0.0
}, {
"latitude": 30.86841669902797,
"longitude": 121.92209563526146,
"speed": 0.0
}, {
"latitude": 30.86861681539376,
"longitude": 121.9220956497433,
"speed": 0.0
}, {
"latitude": 30.86871687358088,
"longitude": 121.92209565698423,
"speed": 0.0
}, {
"latitude": 30.868918657600123,
"longitude": 121.92209567158679,
"speed": 0.0
}, {
"latitude": 30.86901871579572,
"longitude": 121.92209567882773,
"speed": 0.0
}, {
"latitude": 30.869218832195305,
"longitude": 121.92209569330964,
"speed": 0.0
}, {
"latitude": 30.8693188903993,
"longitude": 121.9220957005506,
"speed": 0.0
}, {
"latitude": 30.869519006815654,
"longitude": 121.92209571503255,
"speed": 0.0
}, {
"latitude": 30.865014722558694,
"longitude": 121.92209538907402,
"speed": 0.0
}, {
"latitude": 30.865114780642347,
"longitude": 121.92209539631472,
"speed": 0.0
}, {
"latitude": 30.86531489681845,
"longitude": 121.92209541079615,
"speed": 0.0
}, {
"latitude": 30.865414954910886,
"longitude": 121.92209541803688,
"speed": 0.0
}, {
"latitude": 30.865615071104532,
"longitude": 121.92209543251835,
"speed": 0.0
}, {
"latitude": 30.86571512920572,
"longitude": 121.92209543975909,
"speed": 0.0
}, {
"latitude": 30.86591691305199,
"longitude": 121.92209545436127,
"speed": 0.0
}, {
"latitude": 30.86601697116196,
"longitude": 121.92209546160203,
"speed": 0.0
}, {
"latitude": 30.86621708739061,
"longitude": 121.92209547608357,
"speed": 0.0
}, {
"latitude": 30.866317145509274,
"longitude": 121.92209548332436,
"speed": 0.0
}, {
"latitude": 30.866517261755288,
"longitude": 121.92209549780593,
"speed": 0.0
}, {
"latitude": 30.866615652247145,
"longitude": 121.92209550492605,
"speed": 0.0
}, {
"latitude": 30.866815768510357,
"longitude": 121.92209551940766,
"speed": 0.0
}, {
"latitude": 30.866915826646288,
"longitude": 121.92209552664848,
"speed": 0.0
}, {
"latitude": 30.867115942926745,
"longitude": 121.92209554113013,
"speed": 0.0
}, {
"latitude": 30.86721600107128,
"longitude": 121.92209554837096,
"speed": 0.0
}, {
"latitude": 30.867417785004786,
"longitude": 121.92209556297333,
"speed": 0.0
}, {
"latitude": 30.86751784315794,
"longitude": 121.92209557021418,
"speed": 0.0
}, {
"latitude": 30.86771795947281,
"longitude": 121.92209558469591,
"speed": 0.0
}, {
"latitude": 30.867818017634512,
"longitude": 121.92209559193678,
"speed": 0.0
}, {
"latitude": 30.868018133966448,
"longitude": 121.92209560641855,
"speed": 0.0
}, {
"latitude": 30.86811652450047,
"longitude": 121.92209561353876,
"speed": 0.0
}, {
"latitude": 30.86831664084931,
"longitude": 121.92209562802056,
"speed": 0.0
}, {
"latitude": 30.86841669902797,
"longitude": 121.92209563526146,
"speed": 0.0
}, {
"latitude": 30.86861681539376,
"longitude": 121.9220956497433,
"speed": 0.0
}, {
"latitude": 30.86871687358088,
"longitude": 121.92209565698423,
"speed": 0.0
}, {
"latitude": 30.868918657600123,
"longitude": 121.92209567158679,
"speed": 0.0
}, {
"latitude": 30.86901871579572,
"longitude": 121.92209567882773,
"speed": 0.0
}, {
"latitude": 30.869218832195305,
"longitude": 121.92209569330964,
"speed": 0.0
}, {
"latitude": 30.8693188903993,
"longitude": 121.9220957005506,
"speed": 0.0
}, {
"latitude": 30.869519006815654,
"longitude": 121.92209571503255,
"speed": 0.0
}, {
"latitude": 30.865014722558694,
"longitude": 121.92209538907402,
"speed": 0.0
}, {
"latitude": 30.865114780642347,
"longitude": 121.92209539631472,
"speed": 0.0
}, {
"latitude": 30.865214838728928,
"longitude": 121.92209540355543,
"speed": 0.0
}, {
"latitude": 30.86531489681845,
"longitude": 121.92209541079615,
"speed": 0.0
}, {
"latitude": 30.865414954910886,
"longitude": 121.92209541803688,
"speed": 0.0
}, {
"latitude": 30.865615071104532,
"longitude": 121.92209543251835,
"speed": 0.0
}, {
"latitude": 30.86571512920572,
"longitude": 121.92209543975909,
"speed": 0.0
}, {
"latitude": 30.86591691305199,
"longitude": 121.92209545436127,
"speed": 0.0
}, {
"latitude": 30.86601697116196,
"longitude": 121.92209546160203,
"speed": 0.0
}, {
"latitude": 30.86621708739061,
"longitude": 121.92209547608357,
"speed": 0.0
}, {
"latitude": 30.866317145509274,
"longitude": 121.92209548332436,
"speed": 0.0
}, {
"latitude": 30.866517261755288,
"longitude": 121.92209549780593,
"speed": 0.0
}, {
"latitude": 30.866615652247145,
"longitude": 121.92209550492605,
"speed": 0.0
}, {
"latitude": 30.866815768510357,
"longitude": 121.92209551940766,
"speed": 0.0
}, {
"latitude": 30.866915826646288,
"longitude": 121.92209552664848,
"speed": 0.0
}, {
"latitude": 30.867115942926745,
"longitude": 121.92209554113013,
"speed": 0.0
}, {
"latitude": 30.86721600107128,
"longitude": 121.92209554837096,
"speed": 0.0
}, {
"latitude": 30.867417785004786,
"longitude": 121.92209556297333,
"speed": 0.0
}, {
"latitude": 30.86751784315794,
"longitude": 121.92209557021418,
"speed": 0.0
}, {
"latitude": 30.86771795947281,
"longitude": 121.92209558469591,
"speed": 0.0
}, {
"latitude": 30.867818017634512,
"longitude": 121.92209559193678,
"speed": 0.0
}, {
"latitude": 30.868018133966448,
"longitude": 121.92209560641855,
"speed": 0.0
}, {
"latitude": 30.86811652450047,
"longitude": 121.92209561353876,
"speed": 0.0
}, {
"latitude": 30.86831664084931,
"longitude": 121.92209562802056,
"speed": 0.0
}, {
"latitude": 30.86841669902797,
"longitude": 121.92209563526146,
"speed": 0.0
}, {
"latitude": 30.86861681539376,
"longitude": 121.9220956497433,
"speed": 0.0
}, {
"latitude": 30.86871687358088,
"longitude": 121.92209565698423,
"speed": 0.0
}, {
"latitude": 30.868918657600123,
"longitude": 121.92209567158679,
"speed": 0.0
}, {
"latitude": 30.86901871579572,
"longitude": 121.92209567882773,
"speed": 0.0
}, {
"latitude": 30.869218832195305,
"longitude": 121.92209569330964,
"speed": 0.0
}, {
"latitude": 30.8693188903993,
"longitude": 121.9220957005506,
"speed": 0.0
}, {
"latitude": 30.869519006815654,
"longitude": 121.92209571503255,
"speed": 0.0
}],
"trend": [{
"x": 0.0,
"y": 50.033333
}, {
"x": 0.1,
"y": 50.716667
}, {
"x": 0.2,
"y": 51.033333
}, {
"x": 0.3,
"y": 50.633335
}, {
"x": 0.4,
"y": 51.283333
}, {
"x": 0.5,
"y": 50.3
}, {
"x": 0.6,
"y": 50.333332
}, {
"x": 0.7,
"y": 50.083332
}, {
"x": 0.8,
"y": 50.166668
}, {
"x": 0.9,
"y": 50.3
}, {
"x": 1.0,
"y": 68.15
}, {
"x": 1.1,
"y": 50.95
}, {
"x": 1.2,
"y": 50.55
}, {
"x": 1.3,
"y": 50.683334
}, {
"x": 1.4,
"y": 50.75
}, {
"x": 1.5,
"y": 50.5
}, {
"x": 1.6,
"y": 50.916668
}, {
"x": 1.7,
"y": 50.233334
}, {
"x": 1.8,
"y": 50.516666
}, {
"x": 1.9,
"y": 50.483334
}, {
"x": 2.0,
"y": 50.216667
}, {
"x": 2.1,
"y": 49.716667
}],
"type": "1",
"userid": "155796"
}
在这里插入代码片
GET http://gxhttp.chinacloudapp.cn/api/center/runDetailV2?sign=3e2ebb311b0a7f81cf957bced1ca6c4f&data=%7B%22runid%22%3A%225337725%22%2C%22userid%22%3A%22129835%22%7D HTTP/1.1
Accept-Language: en-US,en;q=0.8
User-Agent: okhttp-okgo/jeasonlzy
versionCode: 308
versionName: 2.2.5
platform: android
xxversionxx: 20180601
uuid: B4D724F9EB50E6ED3DF5B571CCD7D4A8
utoken: 7561e86e1671881ea19ecea4c855f999
BDA9F42E0C8A294ECDF5CC72AAE6A701: 0,0,0,0,1
Host: gxhttp.chinacloudapp.cn
Connection: Keep-Alive
Accept-Encoding: gzip
Cookie: PHPSESSID=577e4jgq3jjlo3urafc3kl5mm0
参数如下:
sign 3e2ebb311b0a7f81cf957bced1ca6c4f
data {"runid":"5337725","userid":"129835"}
分析:
runid是上面上传成功后系统给一次体育锻炼的id;userid是用户id;
HTTP/1.1 200 OK
Date: Thu, 11 Oct 2018 12:48:33 GMT
Server: Apache/2.2.15 (CentOS)
X-Powered-By: PHP/5.6.30
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Seq: 5bbf46a109319
Keep-Alive: timeout=15, max=94
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
Content-Length: 11229
{"code":"200","msg":"查询成功","data":{"busu":"312","bupin":"52.7","duration":"5分56秒","duration2":"05:56 ","speed":"2'43''","length":"2.00","state":"1","real":"2.17","bNode":{"uuid":["FDA50693-A4E2-4FB1-AFCF-C6EB07647825"],"major":["shhy1"],"minor":["00014"],"point":{"latitude":"30.8859890000","longitude":"121.8948540000"}},"tNode":[{"uuid":"","major":"","minor":"","point":{"latitude":"","longitude":""}},{"uuid":"","major":"","minor":"","point":{"latitude":"","longitude":""}}],"track":[{"speed":0.87999999523163,"latitude":30.88022406684,"longitude":121.89811713325},{"speed":5.25,"latitude":30.880653483073,"longitude":121.89800998264},{"speed":4.4800000190735,"latitude":30.880790744358,"longitude":121.89796359592},{"speed":0,"latitude":30.880879720052,"longitude":121.89798800998},{"speed":4.3800001144409,"latitude":30.880879991319,"longitude":121.89804361979},{"speed":4.5700001716614,"latitude":30.881014811198,"longitude":121.89825276693},{"speed":5.2300000190735,"latitude":30.881118977865,"longitude":121.89838134766},{"speed":6.1700000762939,"latitude":30.881220703125,"longitude":121.89847954644},{"speed":4.9800000190735,"latitude":30.881291232639,"longitude":121.89859402127},{"speed":0.50999999046326,"latitude":30.881389160156,"longitude":121.89867919922},{"speed":1.0099999904633,"latitude":30.881396213108,"longitude":121.89871799045},{"speed":1.1599999666214,"latitude":30.881654459635,"longitude":121.89919731988},{"speed":7.1700000762939,"latitude":30.882550726997,"longitude":121.90009412977},{"speed":7.3200001716614,"latitude":30.882694227431,"longitude":121.9002609592},{"speed":7.1700000762939,"latitude":30.882814670139,"longitude":121.90042534722},{"speed":7.1500000953674,"latitude":30.882955729167,"longitude":121.90059136285},{"speed":5.8000001907349,"latitude":30.88313015408,"longitude":121.90067491319},{"speed":6.2300000190735,"latitude":30.883271755642,"longitude":121.90060953776},{"speed":6.4400000572205,"latitude":30.88344156901,"longitude":121.9005078125},{"speed":6.25,"latitude":30.883623318142,"longitude":121.90046468099},{"speed":6.7300000190735,"latitude":30.883800726997,"longitude":121.90047824436},{"speed":6.5100002288818,"latitude":30.883931206597,"longitude":121.90055609809},{"speed":6.0700001716614,"latitude":30.88411078559,"longitude":121.90058159722},{"speed":6.5100002288818,"latitude":30.88428249783,"longitude":121.90058729384},{"speed":6.0900001525879,"latitude":30.884450954861,"longitude":121.90059678819},{"speed":6.8200001716614,"latitude":30.884636230469,"longitude":121.90059163411},{"speed":5.7800002098083,"latitude":30.884804958767,"longitude":121.90054090712},{"speed":6.1300001144409,"latitude":30.884980197483,"longitude":121.90052056207},{"speed":6.9200000762939,"latitude":30.885144314236,"longitude":121.90047878689},{"speed":7.2800002098083,"latitude":30.885358344184,"longitude":121.90043646918},{"speed":7.3800001144409,"latitude":30.885538736979,"longitude":121.90036621094},{"speed":7.3600001335144,"latitude":30.885709906684,"longitude":121.90024549696},{"speed":7.6100001335144,"latitude":30.885895182292,"longitude":121.90008002387},{"speed":8.0100002288818,"latitude":30.886081271701,"longitude":121.89994737413},{"speed":7.5100002288818,"latitude":30.886244032118,"longitude":121.89979275174},{"speed":7.4000000953674,"latitude":30.886382921007,"longitude":121.89963975694},{"speed":7.2300000190735,"latitude":30.886505533854,"longitude":121.89945990668},{"speed":7.6100001335144,"latitude":30.886589084201,"longitude":121.89923339844},{"speed":7.0500001907349,"latitude":30.886683485243,"longitude":121.89904079861},{"speed":7.3400001525879,"latitude":30.886773546007,"longitude":121.89881456163},{"speed":7.3200001716614,"latitude":30.886832139757,"longitude":121.89858100043},{"speed":7.0500001907349,"latitude":30.886854112413,"longitude":121.89835286458},{"speed":7.6500000953674,"latitude":30.886896430122,"longitude":121.89811197917},{"speed":7.8000001907349,"latitude":30.886883138021,"longitude":121.89788438585},{"speed":7.6900000572205,"latitude":30.886853298611,"longitude":121.89764946832},{"speed":6.9400000572205,"latitude":30.886864963108,"longitude":121.89747992622},{"speed":6.960000038147,"latitude":30.886819390191,"longitude":121.89725911458},{"speed":7.3200001716614,"latitude":30.886765407986,"longitude":121.89705105252},{"speed":7.1900000572205,"latitude":30.88671468099,"longitude":121.89683322483},{"speed":6.2800002098083,"latitude":30.886648220486,"longitude":121.89664360894},{"speed":6.6700000762939,"latitude":30.886554361979,"longitude":121.8964710829},{"speed":6.5500001907349,"latitude":30.886451280382,"longitude":121.89628472222},{"speed":6.4000000953674,"latitude":30.88637125651,"longitude":121.89611409505},{"speed":6.5100002288818,"latitude":30.886296657986,"longitude":121.89590223524},{"speed":6.8600001335144,"latitude":30.88623453776,"longitude":121.8957014974},{"speed":6.5900001525879,"latitude":30.886174045139,"longitude":121.89549207899},{"speed":6.4000000953674,"latitude":30.88614312066,"longitude":121.89528347439},{"speed":7.2300000190735,"latitude":30.886115451389,"longitude":121.89504692925},{"speed":6.6900000572205,"latitude":30.886074490017,"longitude":121.89481662326},{"speed":6.5900001525879,"latitude":30.885991482205,"longitude":121.89461751302},{"speed":7.0700001716614,"latitude":30.88590874566,"longitude":121.89441162109},{"speed":6.8200001716614,"latitude":30.885823025174,"longitude":121.89422471788},{"speed":7.0700001716614,"latitude":30.885686577691,"longitude":121.89406358507},{"speed":6.9800000190735,"latitude":30.885546603733,"longitude":121.89390977648},{"speed":7.5700001716614,"latitude":30.885368381076,"longitude":121.89375352648},{"speed":7.3800001144409,"latitude":30.885180392795,"longitude":121.89365451389},{"speed":7.2600002288818,"latitude":30.884962836372,"longitude":121.89359998915},{"speed":7.4400000572205,"latitude":30.884768066406,"longitude":121.89356662326},{"speed":7.5500001907349,"latitude":30.884579264323,"longitude":121.89358289931},{"speed":8.1000003814697,"latitude":30.884357638889,"longitude":121.89361707899},{"speed":8.3000001907349,"latitude":30.884103732639,"longitude":121.89355794271},{"speed":7,"latitude":30.883930392795,"longitude":121.89359510634},{"speed":7.460000038147,"latitude":30.883720431858,"longitude":121.89359673394},{"speed":7.5300002098083,"latitude":30.88350640191,"longitude":121.89360487196},{"speed":7.6700000762939,"latitude":30.883283148872,"longitude":121.8935563151},{"speed":8.3199996948242,"latitude":30.883053385417,"longitude":121.89348931207},{"speed":7.460000038147,"latitude":30.882870822483,"longitude":121.89345269097},{"speed":8.0699996948242,"latitude":30.882650010851,"longitude":121.89329508464},{"speed":8.2799997329712,"latitude":30.882443305122,"longitude":121.89328314887},{"speed":8.4200000762939,"latitude":30.88219672309,"longitude":121.89326931424},{"speed":7.5100002288818,"latitude":30.881984863281,"longitude":121.8932820638},{"speed":8.2200002670288,"latitude":30.881797960069,"longitude":121.89339898003},{"speed":7.4800000190735,"latitude":30.881600206163,"longitude":121.89348795573},{"speed":7.5700001716614,"latitude":30.881450195312,"longitude":121.89362358941},{"speed":7.6500000953674,"latitude":30.881266547309,"longitude":121.89377007378},{"speed":7.1100001335144,"latitude":30.881136338976,"longitude":121.89396538628},{"speed":7.210000038147,"latitude":30.881018608941,"longitude":121.89415066189},{"speed":6.9400000572205,"latitude":30.880874023437,"longitude":121.89429714627},{"speed":6.4800000190735,"latitude":30.880775553385,"longitude":121.89448133681},{"speed":6.7800002098083,"latitude":30.880711263021,"longitude":121.89470540365},{"speed":7.6300001144409,"latitude":30.880675455729,"longitude":121.89492702908},{"speed":7.6700000762939,"latitude":30.880683865017,"longitude":121.89517578125},{"speed":5.4000000953674,"latitude":30.880696072049,"longitude":121.89538465712},{"speed":2.1800000667572,"latitude":30.880690104167,"longitude":121.89549180773},{"speed":2.4800000190735,"latitude":30.880676812066,"longitude":121.89557942708},{"speed":3.5699999332428,"latitude":30.880648328993,"longitude":121.89563720703},{"speed":4.5900001525879,"latitude":30.88065375434,"longitude":121.89577419705},{"speed":5.0100002288818,"latitude":30.880651312934,"longitude":121.89593207465},{"speed":4.460000038147,"latitude":30.880657552083,"longitude":121.89608859592},{"speed":4.9400000572205,"latitude":30.880650770399,"longitude":121.89622775608},{"speed":5.0900001525879,"latitude":30.88067437066,"longitude":121.89640245226},{"speed":4.5100002288818,"latitude":30.880662977431,"longitude":121.89656304253},{"speed":4.25,"latitude":30.880658637153,"longitude":121.89668782552},{"speed":4.1900000572205,"latitude":30.880645345052,"longitude":121.89683241102},{"speed":4.710000038147,"latitude":30.880637478299,"longitude":121.89692003038},{"speed":5.5900001525879,"latitude":30.88063530816,"longitude":121.8971335178},{"speed":5.0100002288818,"latitude":30.880656738281,"longitude":121.89729437934},{"speed":4.7600002288818,"latitude":30.880662434896,"longitude":121.89745741102}],"trend":[{"x":0.1,"y":50.65},{"x":0.2,"y":50.033333},{"x":0.3,"y":49.916668},{"x":0.4,"y":49.9},{"x":0.5,"y":49.966667},{"x":0.6,"y":50.083332},{"x":0.7,"y":50.016666},{"x":0.8,"y":49.816666},{"x":0.9,"y":49.95},{"x":1,"y":49.95},{"x":1.1,"y":49.933334},{"x":1.2,"y":50.183334},{"x":1.3,"y":50.05},{"x":1.4,"y":49.733334},{"x":1.5,"y":49.9},{"x":1.6,"y":50},{"x":1.7,"y":50.283333},{"x":1.8,"y":50.116665},{"x":1.9,"y":49.783333},{"x":2,"y":50.05},{"x":2.1,"y":49.933334},{"x":2.2,"y":49.933334}],"realKm":"2.17","beacon":[{"name":"shhy100014","type":1,"number":"shhy100014","position":{"latitude":"30.8859890000","longitude":"121.8948540000"},"id":"744","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00014"},{"name":"shhy100002","type":1,"number":"shhy100002","position":{"latitude":"30.8829940000","longitude":"121.9014370000"},"id":"732","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00002"}],"gpsinfo":[{"latitude":"30.8795210000","longitude":"121.8929660000"},{"latitude":"30.8842170000","longitude":"121.8935670000"},{"latitude":"30.8868180000","longitude":"121.8979010000"},{"latitude":"30.8827890000","longitude":"121.9032190000"}],"ibeacon":[{"name":"shhy100014","type":1,"number":"shhy100014","position":{"latitude":"30.8859890000","longitude":"121.8948540000"},"id":"744","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00014"},{"name":"shhy100002","type":1,"number":"shhy100002","position":{"latitude":"30.8829940000","longitude":"121.9014370000"},"id":"732","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825","major":"shhy1","minor":"00002"}],"bNodeV2":[{"id":"744","major":"shhy1","minor":"00014","name":"shhy100014","number":"shhy100014","position":{"latitude":30.885989,"longitude":121.894854,"speed":0},"type":"1","uuid":"FDA50693-A4E2-4FB1-AFCF-C6EB07647825"}],"tNodeV2":[{"latitude":30.886818,"longitude":121.897901,"speed":0},{"latitude":30.884217,"longitude":121.893567,"speed":0}],"runDesc":"已完成","cal":0,"runStartTime":"2018-10-11 17:03","runEndTime":"2018-10-11 17:09"}}
解析并格式化结果:
{
"code": "200",
"msg": "查询成功",
"data": {
"busu": "312",
"bupin": "52.7",
"duration": "5分56秒",
"duration2": "05:56 ",
"speed": "2'43''",
"length": "2.00",
"state": "1",
"real": "2.17",
"bNode": {
"uuid": ["FDA50693-A4E2-4FB1-AFCF-C6EB07647825"],
"major": ["shhy1"],
"minor": ["00014"],
"point": {
"latitude": "30.8859890000",
"longitude": "121.8948540000"
}
},
"tNode": [{
"uuid": "",
"major": "",
"minor": "",
"point": {
"latitude": "",
"longitude": ""
}
}, {
"uuid": "",
"major": "",
"minor": "",
"point": {
"latitude": "",
"longitude": ""
}
}],
"track": [{
"speed": 0.87999999523163,
"latitude": 30.88022406684,
"longitude": 121.89811713325
}, {
"speed": 5.25,
"latitude": 30.880653483073,
"longitude": 121.89800998264
}, {
"speed": 4.4800000190735,
"latitude": 30.880790744358,
"longitude": 121.89796359592
}, {
"speed": 0,
"latitude": 30.880879720052,
"longitude": 121.89798800998
}, {
"speed": 4.3800001144409,
"latitude": 30.880879991319,
"longitude": 121.89804361979
}, {
"speed": 4.5700001716614,
"latitude": 30.881014811198,
"longitude": 121.89825276693
}, {
"speed": 5.2300000190735,
"latitude": 30.881118977865,
"longitude": 121.89838134766
}, {
"speed": 6.1700000762939,
"latitude": 30.881220703125,
"longitude": 121.89847954644
}, {
"speed": 4.9800000190735,
"latitude": 30.881291232639,
"longitude": 121.89859402127
}, {
"speed": 0.50999999046326,
"latitude": 30.881389160156,
"longitude": 121.89867919922
}, {
"speed": 1.0099999904633,
"latitude": 30.881396213108,
"longitude": 121.89871799045
}, {
"speed": 1.1599999666214,
"latitude": 30.881654459635,
"longitude": 121.89919731988
}, {
"speed": 7.1700000762939,
"latitude": 30.882550726997,
"longitude": 121.90009412977
}, {
"speed": 7.3200001716614,
"latitude": 30.882694227431,
"longitude": 121.9002609592
}, {
"speed": 7.1700000762939,
"latitude": 30.882814670139,
"longitude": 121.90042534722
}, {
"speed": 7.1500000953674,
"latitude": 30.882955729167,
"longitude": 121.90059136285
}, {
"speed": 5.8000001907349,
"latitude": 30.88313015408,
"longitude": 121.90067491319
}, {
"speed": 6.2300000190735,
"latitude": 30.883271755642,
"longitude": 121.90060953776
}, {
"speed": 6.4400000572205,
"latitude": 30.88344156901,
"longitude": 121.9005078125
}, {
"speed": 6.25,
"latitude": 30.883623318142,
"longitude": 121.90046468099
}, {
"speed": 6.7300000190735,
"latitude": 30.883800726997,
"longitude": 121.90047824436
}, {
"speed": 6.5100002288818,
"latitude": 30.883931206597,
"longitude": 121.90055609809
}, {
"speed": 6.0700001716614,
"latitude": 30.88411078559,
"longitude": 121.90058159722
}, {
"speed": 6.5100002288818,
"latitude": 30.88428249783,
"longitude": 121.90058729384
}, {
"speed": 6.0900001525879,
"latitude": 30.884450954861,
"longitude": 121.90059678819
}, {
"speed": 6.8200001716614,
"latitude": 30.884636230469,
"longitude": 121.90059163411
}, {
"speed": 5.7800002098083,
"latitude": 30.884804958767,
"longitude": 121.90054090712
}, {
"speed": 6.1300001144409,
"latitude": 30.884980197483,
"longitude": 121.90052056207
}, {
"speed": 6.9200000762939,
"latitude": 30.885144314236,
"longitude": 121.90047878689
}, {
"speed": 7.2800002098083,
"latitude": 30.885358344184,
"longitude": 121.90043646918
}, {
"speed": 7.3800001144409,
"latitude": 30.885538736979,
"longitude": 121.90036621094
}, {
"speed": 7.3600001335144,
"latitude": 30.885709906684,
"longitude": 121.90024549696
}, {
"speed": 7.6100001335144,
"latitude": 30.885895182292,
"longitude": 121.90008002387
}, {
"speed": 8.0100002288818,
"latitude": 30.886081271701,
"longitude": 121.89994737413
}, {
"speed": 7.5100002288818,
"latitude": 30.886244032118,
"longitude": 121.89979275174
}, {
"speed": 7.4000000953674,
"latitude": 30.886382921007,
"longitude": 121.89963975694
}, {
"speed": 7.2300000190735,
"latitude": 30.886505533854,
"longitude": 121.89945990668
}, {
"speed": 7.6100001335144,
"latitude": 30.886589084201,
"longitude": 121.89923339844
}, {
"speed": 7.0500001907349,
"latitude": 30.886683485243,
"longitude": 121.89904079861
}, {
"speed": 7.3400001525879,
"latitude": 30.886773546007,
"longitude": 121.89881456163
}, {
"speed": 7.3200001716614,
"latitude": 30.886832139757,
"longitude": 121.89858100043
}, {
"speed": 7.0500001907349,
"latitude": 30.886854112413,
"longitude": 121.89835286458
}, {
"speed": 7.6500000953674,
"latitude": 30.886896430122,
"longitude": 121.89811197917
}, {
"speed": 7.8000001907349,
"latitude": 30.886883138021,
"longitude": 121.89788438585
}, {
"speed": 7.6900000572205,
"latitude": 30.886853298611,
"longitude": 121.89764946832
}, {
"speed": 6.9400000572205,
"latitude": 30.886864963108,
"longitude": 121.89747992622
}, {
"speed": 6.960000038147,
"latitude": 30.886819390191,
"longitude": 121.89725911458
}, {
"speed": 7.3200001716614,
"latitude": 30.886765407986,
"longitude": 121.89705105252
}, {
"speed": 7.1900000572205,
"latitude": 30.88671468099,
"longitude": 121.89683322483
}, {
"speed": 6.2800002098083,
"latitude": 30.886648220486,
"longitude": 121.89664360894
}, {
"speed": 6.6700000762939,
"latitude": 30.886554361979,
"longitude": 121.8964710829
}, {
"speed": 6.5500001907349,
"latitude": 30.886451280382,
"longitude": 121.89628472222
}, {
"speed": 6.4000000953674,
"latitude": 30.88637125651,
"longitude": 121.89611409505
}, {
"speed": 6.5100002288818,
"latitude": 30.886296657986,
"longitude": 121.89590223524
}, {
"speed": 6.8600001335144,
"latitude": 30.88623453776,
"longitude": 121.8957014974
}, {
"speed": 6.5900001525879,
"latitude": 30.886174045139,
"longitude": 121.89549207899
}, {
"speed": 6.4000000953674,
"latitude": 30.88614312066,
"longitude": 121.89528347439
}, {
"speed": 7.2300000190735,
"latitude": 30.886115451389,
"longitude": 121.89504692925
}, {
"speed": 6.6900000572205,
"latitude": 30.886074490017,
"longitude": 121.89481662326
}, {
"speed": 6.5900001525879,
"latitude": 30.885991482205,
"longitude": 121.89461751302
}, {
"speed": 7.0700001716614,
"latitude": 30.88590874566,
"longitude": 121.89441162109
}, {
"speed": 6.8200001716614,
"latitude": 30.885823025174,
"longitude": 121.89422471788
}, {
"speed": 7.0700001716614,
"latitude": 30.885686577691,
"longitude": 121.89406358507
}, {
"speed": 6.9800000190735,
"latitude": 30.885546603733,
"longitude": 121.89390977648
}, {
"speed": 7.5700001716614,
"latitude": 30.885368381076,
"longitude": 121.89375352648
}, {
"speed": 7.3800001144409,
"latitude": 30.885180392795,
"longitude": 121.89365451389
}, {
"speed": 7.2600002288818,
"latitude": 30.884962836372,
"longitude": 121.89359998915
}, {
"speed": 7.4400000572205,
"latitude": 30.884768066406,
"longitude": 121.89356662326
}, {
"speed": 7.5500001907349,
"latitude": 30.884579264323,
"longitude": 121.89358289931
}, {
"speed": 8.1000003814697,
"latitude": 30.884357638889,
"longitude": 121.89361707899
}, {
"speed": 8.3000001907349,
"latitude": 30.884103732639,
"longitude": 121.89355794271
}, {
"speed": 7,
"latitude": 30.883930392795,
"longitude": 121.89359510634
}, {
"speed": 7.460000038147,
"latitude": 30.883720431858,
"longitude": 121.89359673394
}, {
"speed": 7.5300002098083,
"latitude": 30.88350640191,
"longitude": 121.89360487196
}, {
"speed": 7.6700000762939,
"latitude": 30.883283148872,
"longitude": 121.8935563151
}, {
"speed": 8.3199996948242,
"latitude": 30.883053385417,
"longitude": 121.89348931207
}, {
"speed": 7.460000038147,
"latitude": 30.882870822483,
"longitude": 121.89345269097
}, {
"speed": 8.0699996948242,
"latitude": 30.882650010851,
"longitude": 121.89329508464
}, {
"speed": 8.2799997329712,
"latitude": 30.882443305122,
"longitude": 121.89328314887
}, {
"speed": 8.4200000762939,
"latitude": 30.88219672309,
"longitude": 121.89326931424
}, {
"speed": 7.5100002288818,
"latitude": 30.881984863281,
"longitude": 121.8932820638
}, {
"speed": 8.2200002670288,
"latitude": 30.881797960069,
"longitude": 121.89339898003
}, {
"speed": 7.4800000190735,
"latitude": 30.881600206163,
"longitude": 121.89348795573
}, {
"speed": 7.5700001716614,
"latitude": 30.881450195312,
"longitude": 121.89362358941
}, {
"speed": 7.6500000953674,
"latitude": 30.881266547309,
"longitude": 121.89377007378
}, {
"speed": 7.1100001335144,
"latitude": 30.881136338976,
"longitude": 121.89396538628
}, {
"speed": 7.210000038147,
"latitude": 30.881018608941,
"longitude": 121.89415066189
}, {
"speed": 6.9400000572205,
"latitude": 30.880874023437,
"longitude": 121.89429714627
}, {
"speed": 6.4800000190735,
"latitude": 30.880775553385,
"longitude": 121.89448133681
}, {
"speed": 6.7800002098083,
"latitude": 30.880711263021,
"longitude": 121.89470540365
}, {
"speed": 7.6300001144409,
"latitude": 30.880675455729,
"longitude": 121.89492702908
}, {
"speed": 7.6700000762939,
"latitude": 30.880683865017,
"longitude": 121.89517578125
}, {
"speed": 5.4000000953674,
"latitude": 30.880696072049,
"longitude": 121.89538465712
}, {
"speed": 2.1800000667572,
"latitude": 30.880690104167,
"longitude": 121.89549180773
}, {
"speed": 2.4800000190735,
"latitude": 30.880676812066,
"longitude": 121.89557942708
}, {
"speed": 3.5699999332428,
"latitude": 30.880648328993,
"longitude": 121.89563720703
}, {
"speed": 4.5900001525879,
"latitude": 30.88065375434,
"longitude": 121.89577419705
}, {
"speed": 5.0100002288818,
"latitude": 30.880651312934,
"longitude": 121.89593207465
}, {
"speed": 4.460000038147,
"latitude": 30.880657552083,
"longitude": 121.89608859592
}, {
"speed": 4.9400000572205,
"latitude": 30.880650770399,
"longitude": 121.89622775608
}, {
"speed": 5.0900001525879,
"latitude": 30.88067437066,
"longitude": 121.89640245226
}, {
"speed": 4.5100002288818,
"latitude": 30.880662977431,
"longitude": 121.89656304253
}, {
"speed": 4.25,
"latitude": 30.880658637153,
"longitude": 121.89668782552
}, {
"speed": 4.1900000572205,
"latitude": 30.880645345052,
"longitude": 121.89683241102
}, {
"speed": 4.710000038147,
"latitude": 30.880637478299,
"longitude": 121.89692003038
}, {
"speed": 5.5900001525879,
"latitude": 30.88063530816,
"longitude": 121.8971335178
}, {
"speed": 5.0100002288818,
"latitude": 30.880656738281,
"longitude": 121.89729437934
}, {
"speed": 4.7600002288818,
"latitude": 30.880662434896,
"longitude": 121.89745741102
}],
"trend": [{
"x": 0.1,
"y": 50.65
}, {
"x": 0.2,
"y": 50.033333
}, {
"x": 0.3,
"y": 49.916668
}, {
"x": 0.4,
"y": 49.9
}, {
"x": 0.5,
"y": 49.966667
}, {
"x": 0.6,
"y": 50.083332
}, {
"x": 0.7,
"y": 50.016666
}, {
"x": 0.8,
"y": 49.816666
}, {
"x": 0.9,
"y": 49.95
}, {
"x": 1,
"y": 49.95
}, {
"x": 1.1,
"y": 49.933334
}, {
"x": 1.2,
"y": 50.183334
}, {
"x": 1.3,
"y": 50.05
}, {
"x": 1.4,
"y": 49.733334
}, {
"x": 1.5,
"y": 49.9
}, {
"x": 1.6,
"y": 50
}, {
"x": 1.7,
"y": 50.283333
}, {
"x": 1.8,
"y": 50.116665
}, {
"x": 1.9,
"y": 49.783333
}, {
"x": 2,
"y": 50.05
}, {
"x": 2.1,
"y": 49.933334
}, {
"x": 2.2,
"y": 49.933334
}],
"realKm": "2.17",
"beacon": [{
"name": "shhy100014",
"type": 1,
"number": "shhy100014",
"position": {
"latitude": "30.8859890000",
"longitude": "121.8948540000"
},
"id": "744",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00014"
}, {
"name": "shhy100002",
"type": 1,
"number": "shhy100002",
"position": {
"latitude": "30.8829940000",
"longitude": "121.9014370000"
},
"id": "732",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00002"
}],
"gpsinfo": [{
"latitude": "30.8795210000",
"longitude": "121.8929660000"
}, {
"latitude": "30.8842170000",
"longitude": "121.8935670000"
}, {
"latitude": "30.8868180000",
"longitude": "121.8979010000"
}, {
"latitude": "30.8827890000",
"longitude": "121.9032190000"
}],
"ibeacon": [{
"name": "shhy100014",
"type": 1,
"number": "shhy100014",
"position": {
"latitude": "30.8859890000",
"longitude": "121.8948540000"
},
"id": "744",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00014"
}, {
"name": "shhy100002",
"type": 1,
"number": "shhy100002",
"position": {
"latitude": "30.8829940000",
"longitude": "121.9014370000"
},
"id": "732",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825",
"major": "shhy1",
"minor": "00002"
}],
"bNodeV2": [{
"id": "744",
"major": "shhy1",
"minor": "00014",
"name": "shhy100014",
"number": "shhy100014",
"position": {
"latitude": 30.885989,
"longitude": 121.894854,
"speed": 0
},
"type": "1",
"uuid": "FDA50693-A4E2-4FB1-AFCF-C6EB07647825"
}],
"tNodeV2": [{
"latitude": 30.886818,
"longitude": 121.897901,
"speed": 0
}, {
"latitude": 30.884217,
"longitude": 121.893567,
"speed": 0
}],
"runDesc": "已完成",
"cal": 0,
"runStartTime": "2018-10-11 17:03",
"runEndTime": "2018-10-11 17:09"
}
}
分析:
和上面上传的时候区别不大了。
SAZ用Fidder打开