想要获取到微信小程序的访问情况,显示在自己的页面中
这个功能微信有提供接口,也做了接口文档,但是以微信一贯的态度,不经常接触的人没个三五下,实乃猜不出文档中暗藏的玄机,所以,我决定把这一简单的功能小小叙述一下
我这里记录为从无到有的过程,伸手党看了可以秒懂的那种,如果是似懂非懂的那种,可以跳着看找重点
一共要调用微信两个接口,一个是获取“接口调用凭证”,拿到微信开发必备的access_token,再一个就是获取小程序访问情况的接口
需要两个参数,小程序的appid和secret,这个到小程序后台获取
首先获取access_token,接口为:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的appid&secret=你的secret
这个接口只需传入appid和secret,还有一个固定的参数“grant_type=client_credential”,使用GET请求即可拿到access_token
若有疑问,请细品官网文档:
拿到access_token后,即可调用获取小程序访问数据的接口,官方文档地址:
仔细说一下,接口为:
https://api.weixin.qq.com/datacube/getweanalysisappiddailysummarytrend?access_token=ACCESS_TOKEN
这个接口,从官方文档看一共有3个必填参数,使用POST请求
access_token:接口调用凭证
begin_date:开始日期,格式为 yyyymmdd,比如20210607
end_date:结束日期,限定查询1天数据,允许设置的最大值为昨日,格式为 yyyymmdd,比如20210607
注意参数中要求,限定查询1天数据,也就是开始日期和结束日期相同(还不如直接要一个参数)
我们做好参数后,按照文档所讲请求接口,正常会返回“40071 data format error ”这样的错误,提示你参数有误,我也是在这个地方徘徊了许久
文档是不会告诉你,access_token拼接在url上行不行,剩下两个参数直接传行不行
实际情况是:
access_token怎么传都行,写在url没问题
begin_date和end_date需要放到一个数组中,转成json再传给微信
我的写法,可以参考:
请求成功后,就能拿到如下格式的json数据:
注意其中小程序用户是累计的数据,pv和uv,只返回请求日期的数据,而不是累计的,展示到页面时不要搞混淆
不明白这么重要的一步,官方文档怎么不明确告诉开发者,虽然有个参数示例,但也不能这么模糊让开发者去猜吧,这种过分清高的做法,让人无奈!
上一篇:微信小程序拨打电话
下一篇:微信小程序模拟cookie并发送