百度统计数据导出服务踩的坑 | 您所在的位置:网站首页 › 百度统计数据 › 百度统计数据导出服务踩的坑 |
今天在项目中引入百度统计,我们是打算在我们的页面中引入百度提供的接口,而不仅仅是用百度统计里面的一些js,中途踩到一些坑,做下记录。 1. 开通百度统计导出服务这个导出服务算是高级功能吧,开通完之后百度统计会给你分配一个token,在后面会用到,开通的图如下: 为避免看此篇文章的同学不看完就动手操作导致翻车,先说结论,直接在postman中测即可,不用登录,不清楚的继续往下看。 在官网页面我首先看到最下面的示例代码和开发文档,把它们下载下来看,发现效果不好,一大坨一大坨的,直接用postman测https://api.baidu.com/json/tongji/v1/ReportService/getSiteList 这个接口,报如下错误: { "header": { "desc": "system failure", "failures": [ { "code": 8603, "message": "The request header you provided is invalid. sn:289933044807937", "position": "_sys" } ], "status": 3 } }难道姿势不对,我又回过头来仔细的看百度文档,终于翻到下面这篇文档,我如获至宝,以为可以把问题解决,但就是这篇文档把我一步步带到坑中。 http://tongji.baidu.com/open/api/more?p=tongjiapi_guide.tpl它在使用流程中写到,首先要进行身份认证,就是根据账号,密码和token进行身份验证,之后进行站点选择,这让我坚信,我上面操作失败是因为少了一步登录操作,我开始去百度上搜索这个问题,回答着寥寥,大部分都是提问,其中有一两个回答把我引到了github上,网址如下: https://github.com/nqdy666/BaiduTongjiClient 和https://github.com/justlive1/baiduTongJi一个是gradle项目一个是maven项目,费了老牛鼻子劲把这两个项目捡下来,下载依赖包,跑起来发现依旧不能运行,这就走了好大的弯路,现在又会过头在继续搜在postman中遇到的那个说请求头不可用的问题,发现下面一篇文档: https://www.cnblogs.com/w1570631036/p/7096966.html?utm_source=debugrun&utm_medium=referral然后我把请求体进行了修改,直接就请求成功了,详见如下截图, 请求体代码如下: { "header": { "account_type": 1, "password": "你的密码", "token": "你的token", "username": "你的用户名" }, "body": { "siteId":"你的siteId", "method": "visit/district/a", "start_date": "20170818", "end_date": "20171118", "metrics": "pv_count,visitor_count,avg_visit_time" } }如果postman能请求成功,那么我们使用java编写httpclient发送请求肯定也是可以的,我想纠正的就是百度统计的getSiteList和getData这两个接口只要你有用户名,密码,token(siteId在首页点击网站名称进去在浏览器地址栏中问号后面就可以获取到)组织好请求体就可以调用,完全不是某些网友回答的要费很大劲登录后才能调用,使用httpclient怎么调用就不说了,实在不会引入一个hutool工具包,里面有现成的工具类,最后希望大家少走弯路!! |
今日新闻 |
推荐新闻 |
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 |