Node.js中使用百度统计API统计站点的访问量、访客数、IP数相关信息

  • Post author:
  • Post category:其他

详情访问:详情

欢迎来我的个人网站:TanJia

今天,在个人网站的关于版块,添加了本站点的总访问量、总访客数以及当日的访问量等相关信息。使用的是百度统计的相关API。

        首先,我们需要在百度统计中开通数据导出服务,获得Token,如下图所示。它提供了API调试工具以及API用户手册,使用起来非常方便!

 当我们打开百度统计来监控我们的站点时,URL中就以及有了我们站点 的siteId,如图所示

    在自己项目的恰当位置,添加以下代码:执行成功后,可以看到控制台打印的就是我们所需要的数据;

var http = require("https");
var url = require('url');

function postData(start,end){
	return JSON.stringify({
		"header": {
			"account_type": "1",
			"password": "****",
			"token": "*****", /* 输入自己的信息 */
			"username": "****"
		},
		"body": {
			"site_id": "****",/* 输入自己的siteId */
			"start_date": start,
			"end_date": end,
			"metrics": "pv_count,visitor_count,ip_count",
			"method": "source/all/a"
		}
	})
}

var options = {
	hostname: url.parse("https://api.baidu.com").hostname,
	path:'/json/tongji/v1/ReportService/getData',
	port:443,
	method:"POST",
}

var req = http.request(options,function(res){
	res.setEncoding("utf-8");
	res.on("data",function(chunk){
		console.log(JSON.parse(chunk))  /* 我们需要的数据 */
	})
})

req.on("error",function(err){
	console.log(err.message);
})

req.write(postData('20200320','20200331')) /* 自己传入开始时间和结束时间,我这里给出的是固定值 */
req.end()

上述过程,仅仅简单介绍了Node.js中使用百度统计统计站点的简单方法,使用时我们应该自己去完善它。由于使用的是第三方的统计,所以我们需要考虑到请求不成功的情况,防止出现由于第三方的原因页面无法正常显示的情况,让页面做到平稳退化!


版权声明:本文为sinat_36014216原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。