百度统计数据导出服务踩的坑 您所在的位置:网站首页 百度统计数据 百度统计数据导出服务踩的坑

百度统计数据导出服务踩的坑

2023-11-16 07:23| 来源: 网络整理| 查看: 265

今天在项目中引入百度统计,我们是打算在我们的页面中引入百度提供的接口,而不仅仅是用百度统计里面的一些js,中途踩到一些坑,做下记录。

1. 开通百度统计导出服务

这个导出服务算是高级功能吧,开通完之后百度统计会给你分配一个token,在后面会用到,开通的图如下: 这里写图片描述

2.通过代码调用百度统计的接口

为避免看此篇文章的同学不看完就动手操作导致翻车,先说结论,直接在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 实验室设备网 版权所有