mirror of
https://github.com/silenceper/wechat.git
synced 2026-02-04 12:52:27 +08:00
微信小程序-数据分析-获取小程序性能数据 (#837)
* feat: 微信小程序-数据分析-性能数据 * feat: 微信小程序-数据分析-性能数据 * feat: 微信小程序-数据分析-性能数据
This commit is contained in:
@@ -30,6 +30,8 @@ const (
|
|||||||
getAnalysisVisitDistributionURL = "https://api.weixin.qq.com/datacube/getweanalysisappidvisitdistribution?access_token=%s"
|
getAnalysisVisitDistributionURL = "https://api.weixin.qq.com/datacube/getweanalysisappidvisitdistribution?access_token=%s"
|
||||||
// 访问页面
|
// 访问页面
|
||||||
getAnalysisVisitPageURL = "https://api.weixin.qq.com/datacube/getweanalysisappidvisitpage?access_token=%s"
|
getAnalysisVisitPageURL = "https://api.weixin.qq.com/datacube/getweanalysisappidvisitpage?access_token=%s"
|
||||||
|
// 获取小程序性能数据
|
||||||
|
getPerformanceDataURL = "https://api.weixin.qq.com/wxa/business/performance/boot?access_token=%s"
|
||||||
)
|
)
|
||||||
|
|
||||||
// Analysis analyis 数据分析
|
// Analysis analyis 数据分析
|
||||||
@@ -315,3 +317,67 @@ func (analysis *Analysis) GetAnalysisVisitPage(beginDate, endDate string) (resul
|
|||||||
}
|
}
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// GetPerformanceDataRequest 获取小程序性能数据请求
|
||||||
|
type GetPerformanceDataRequest struct {
|
||||||
|
Module string `json:"module"`
|
||||||
|
Time PerformanceDataTime `json:"time"`
|
||||||
|
Params []PerformanceDataParams `json:"params"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataTime 获取小程序性能数据开始和结束日期
|
||||||
|
type PerformanceDataTime struct {
|
||||||
|
BeginTimestamp int64 `json:"begin_timestamp"`
|
||||||
|
EndTimestamp int64 `json:"end_timestamp"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataParams 获取小程序性能数据查询条件
|
||||||
|
type PerformanceDataParams struct {
|
||||||
|
Field string `json:"field"`
|
||||||
|
Value string `json:"value"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetPerformanceDataResponse 获取小程序性能数据响应
|
||||||
|
type GetPerformanceDataResponse struct {
|
||||||
|
util.CommonError
|
||||||
|
Body PerformanceDataBody `json:"body"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataBody 性能数据
|
||||||
|
type PerformanceDataBody struct {
|
||||||
|
Tables []PerformanceDataTable `json:"tables"`
|
||||||
|
Count int64 `json:"count"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataTable 数据数组
|
||||||
|
type PerformanceDataTable struct {
|
||||||
|
ID string `json:"id"`
|
||||||
|
Lines []PerformanceDataTableLine `json:"lines"`
|
||||||
|
Zh string `json:"zh"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataTableLine 按时间排列的性能数据
|
||||||
|
type PerformanceDataTableLine struct {
|
||||||
|
Fields []PerformanceDataTableLineField `json:"fields"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// PerformanceDataTableLineField 单天的性能数据
|
||||||
|
type PerformanceDataTableLineField struct {
|
||||||
|
RefDate string `json:"refdate"`
|
||||||
|
Value string `json:"value"`
|
||||||
|
}
|
||||||
|
|
||||||
|
// GetPerformanceData 获取小程序性能数据
|
||||||
|
// see https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/data-analysis/others/getPerformanceData.html
|
||||||
|
func (analysis *Analysis) GetPerformanceData(req *GetPerformanceDataRequest) (res GetPerformanceDataResponse, err error) {
|
||||||
|
var accessToken string
|
||||||
|
if accessToken, err = analysis.GetAccessToken(); err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var response []byte
|
||||||
|
if response, err = util.PostJSON(fmt.Sprintf(getPerformanceDataURL, accessToken), req); err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
err = util.DecodeWithError(response, &res, "GetPerformanceData")
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user