Help us shape the future of Go! Take the 2026 Go Developer Survey

miniprogram

package
v1.2.6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 22, 2020 License: Apache-2.0 Imports: 9 Imported by: 25

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrAppIDNotMatch appid不匹配
	ErrAppIDNotMatch = errors.New("app id not match")
	// ErrInvalidBlockSize block size不合法
	ErrInvalidBlockSize = errors.New("invalid block size")
	// ErrInvalidPKCS7Data PKCS7数据不合法
	ErrInvalidPKCS7Data = errors.New("invalid PKCS7 data")
	// ErrInvalidPKCS7Padding 输入padding失败
	ErrInvalidPKCS7Padding = errors.New("invalid padding on input")
)

Functions

This section is empty.

Types

type AnalysisRetainItem

type AnalysisRetainItem struct {
	Key   int `json:"key"`   // 标识,0开始表示当天,1表示1甜后,以此类推
	Value int `json:"value"` // key对应日期的新增用户数/活跃用户数(key=0时)或留存用户数(k>0时)
}

AnalysisRetainItem 留存项结构

type Color

type Color struct {
	R string `json:"r"`
	G string `json:"g"`
	B string `json:"b"`
}

Color QRCode color

type MiniProgram

type MiniProgram struct {
	*context.Context
}

MiniProgram struct extends context

func NewMiniProgram

func NewMiniProgram(context *context.Context) *MiniProgram

NewMiniProgram 实例化小程序接口

func (*MiniProgram) Code2Session

func (wxa *MiniProgram) Code2Session(jsCode string) (result ResCode2Session, err error)

Code2Session 登录凭证校验

func (*MiniProgram) CreateWXAQRCode

func (wxa *MiniProgram) CreateWXAQRCode(coderParams QRCoder) (response []byte, err error)

CreateWXAQRCode 获取小程序二维码,适用于需要的码数量较少的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/createWXAQRCode.html

func (*MiniProgram) Decrypt

func (wxa *MiniProgram) Decrypt(sessionKey, encryptedData, iv string) (*UserInfo, error)

Decrypt 解密数据

func (*MiniProgram) DecryptPhone added in v1.2.1

func (wxa *MiniProgram) DecryptPhone(sessionKey, encryptedData, iv string) (*PhoneInfo, error)

DecryptPhone 解密数据(手机)

func (*MiniProgram) GetAnalysisDailyRetain

func (wxa *MiniProgram) GetAnalysisDailyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisDailyRetain 获取用户访问小程序日留存

func (*MiniProgram) GetAnalysisDailySummary

func (wxa *MiniProgram) GetAnalysisDailySummary(beginDate, endDate string) (result ResAnalysisDailySummary, err error)

GetAnalysisDailySummary 获取用户访问小程序数据概况

func (*MiniProgram) GetAnalysisDailyVisitTrend

func (wxa *MiniProgram) GetAnalysisDailyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisDailyVisitTrend 获取用户访问小程序数据日趋势

func (*MiniProgram) GetAnalysisMonthlyRetain

func (wxa *MiniProgram) GetAnalysisMonthlyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisMonthlyRetain 获取用户访问小程序月留存

func (*MiniProgram) GetAnalysisMonthlyVisitTrend

func (wxa *MiniProgram) GetAnalysisMonthlyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisMonthlyVisitTrend 获取用户访问小程序数据月趋势

func (*MiniProgram) GetAnalysisUserPortrait

func (wxa *MiniProgram) GetAnalysisUserPortrait(beginDate, endDate string) (result ResAnalysisUserPortrait, err error)

GetAnalysisUserPortrait 获取小程序新增或活跃用户的画像分布数据

func (*MiniProgram) GetAnalysisVisitDistribution

func (wxa *MiniProgram) GetAnalysisVisitDistribution(beginDate, endDate string) (result ResAnalysisVisitDistribution, err error)

GetAnalysisVisitDistribution 获取用户小程序访问分布数据

func (*MiniProgram) GetAnalysisVisitPage

func (wxa *MiniProgram) GetAnalysisVisitPage(beginDate, endDate string) (result ResAnalysisVisitPage, err error)

GetAnalysisVisitPage 获取小程序页面访问数据

func (*MiniProgram) GetAnalysisWeeklyRetain

func (wxa *MiniProgram) GetAnalysisWeeklyRetain(beginDate, endDate string) (result ResAnalysisRetain, err error)

GetAnalysisWeeklyRetain 获取用户访问小程序周留存

func (*MiniProgram) GetAnalysisWeeklyVisitTrend

func (wxa *MiniProgram) GetAnalysisWeeklyVisitTrend(beginDate, endDate string) (result ResAnalysisVisitTrend, err error)

GetAnalysisWeeklyVisitTrend 获取用户访问小程序数据周趋势

func (*MiniProgram) GetWXACode

func (wxa *MiniProgram) GetWXACode(coderParams QRCoder) (response []byte, err error)

GetWXACode 获取小程序码,适用于需要的码数量较少的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/getWXACode.html

func (*MiniProgram) GetWXACodeUnlimit

func (wxa *MiniProgram) GetWXACodeUnlimit(coderParams QRCoder) (response []byte, err error)

GetWXACodeUnlimit 获取小程序码,适用于需要的码数量极多的业务场景 文档地址: https://developers.weixin.qq.com/miniprogram/dev/api/getWXACodeUnlimit.html

type PhoneInfo added in v1.2.1

type PhoneInfo struct {
	PhoneNumber     string `json:"phoneNumber"`
	PurePhoneNumber string `json:"purePhoneNumber"`
	CountryCode     string `json:"countryCode"`
	Watermark       struct {
		Timestamp int64  `json:"timestamp"`
		AppID     string `json:"appid"`
	} `json:"watermark"`
}

PhoneInfo 用户手机号

type QRCoder

type QRCoder struct {
	// page 必须是已经发布的小程序存在的页面,根路径前不要填加 /,不能携带参数(参数请放在scene字段里),如果不填写这个字段,默认跳主页面
	Page string `json:"page,omitempty"`
	// path 扫码进入的小程序页面路径
	Path string `json:"path,omitempty"`
	// width 图片宽度
	Width int `json:"width,omitempty"`
	// scene 最大32个可见字符,只支持数字,大小写英文以及部分特殊字符:!#$&'()*+,/:;=?@-._~,其它字符请自行编码为合法字符(因不支持%,中文无法使用 urlencode 处理,请使用其他编码方式)
	Scene string `json:"scene,omitempty"`
	// autoColor 自动配置线条颜色,如果颜色依然是黑色,则说明不建议配置主色调
	AutoColor bool `json:"auto_color,omitempty"`
	// lineColor AutoColor 为 false 时生效,使用 rgb 设置颜色 例如 {"r":"xxx","g":"xxx","b":"xxx"},十进制表示
	LineColor Color `json:"line_color,omitempty"`
	// isHyaline 是否需要透明底色
	IsHyaline bool `json:"is_hyaline,omitempty"`
}

QRCoder 小程序码参数

type ResAnalysisDailySummary

type ResAnalysisDailySummary struct {
	util.CommonError
	List []struct {
		RefDate    string `json:"ref_date"`    // 日期
		VisitTotal int    `json:"visit_total"` // 累计用户数
		SharePV    int    `json:"share_pv"`    // 转发次数
		ShareUV    int    `json:"share_uv"`    // 转发人数
	} `json:"list"`
}

ResAnalysisDailySummary 小程序访问数据概况

type ResAnalysisRetain

type ResAnalysisRetain struct {
	util.CommonError
	RefDate    string               `json:"ref_date"`     // 日期
	VisitUVNew []AnalysisRetainItem `json:"visit_uv_new"` // 新增用户留存
	VisitUV    []AnalysisRetainItem `json:"visit_uv"`     // 活跃用户留存
}

ResAnalysisRetain 小程序留存数据返回

type ResAnalysisUserPortrait

type ResAnalysisUserPortrait struct {
	util.CommonError
	RefDate    string       `json:"ref_date"`     // 日期
	VisitUVNew UserPortrait `json:"visit_uv_new"` // 新用户画像
	VisitUV    UserPortrait `json:"visit_uv"`     // 活跃用户画像
}

ResAnalysisUserPortrait 小程序新增或活跃用户的画像分布数据返回

type ResAnalysisVisitDistribution

type ResAnalysisVisitDistribution struct {
	util.CommonError
	RefDate string                   `json:"ref_date"` // 日期
	List    []VisitDistributionIndex `json:"list"`     // 数据列表
}

ResAnalysisVisitDistribution 小程序访问分布数据返回

type ResAnalysisVisitPage

type ResAnalysisVisitPage struct {
	util.CommonError
	RefDate string          `json:"ref_date"` // 日期
	List    []VisitPageItem `json:"list"`     // 数据列表
}

ResAnalysisVisitPage 访问小程序页面访问数据返回

type ResAnalysisVisitTrend

type ResAnalysisVisitTrend struct {
	util.CommonError
	List []struct {
		RefDate         string  `json:"ref_date"`          // 日期
		SessionCnt      int     `json:"session_cnt"`       // 打开次数
		VisitPV         int     `json:"visit_pv"`          // 访问次数
		VisitUV         int     `json:"visit_uv"`          // 访问人数
		VisitUVNew      int     `json:"visit_uv_new"`      // 新用户数
		StayTimeUV      float64 `json:"stay_time_uv"`      // 人均停留时长
		StayTimeSession float64 `json:"stay_time_session"` // 次均停留时常
		VisitDepth      float64 `json:"visit_depth"`       // 平均访问深度
	} `json:"list"`
}

ResAnalysisVisitTrend 小程序访问数据趋势(日、月、周)

type ResCode2Session

type ResCode2Session struct {
	util.CommonError

	OpenID     string `json:"openid"`      // 用户唯一标识
	SessionKey string `json:"session_key"` // 会话密钥
	UnionID    string `json:"unionid"`     // 用户在开放平台的唯一标识符,在满足UnionID下发条件的情况下会返回
}

ResCode2Session 登录凭证校验的返回结果

type UserInfo

type UserInfo struct {
	OpenID    string `json:"openId"`
	UnionID   string `json:"unionId"`
	NickName  string `json:"nickName"`
	Gender    int    `json:"gender"`
	City      string `json:"city"`
	Province  string `json:"province"`
	Country   string `json:"country"`
	AvatarURL string `json:"avatarUrl"`
	Language  string `json:"language"`
	Watermark struct {
		Timestamp int64  `json:"timestamp"`
		AppID     string `json:"appid"`
	} `json:"watermark"`
}

UserInfo 用户信息

type UserPortrait

type UserPortrait struct {
	Index     int                `json:"index"`     // 分布类型
	Province  []UserPortraitItem `json:"province"`  // 省份,如北京、广东等
	City      []UserPortraitItem `json:"city"`      // 城市,如北京、广州等
	Genders   []UserPortraitItem `json:"genders"`   // 性别,包括男、女、未知
	Platforms []UserPortraitItem `json:"platforms"` // 终端类型,包括iPhone, android, 其他
	Devices   []UserPortraitItem `json:"devices"`   // 机型,如苹果iPhone 6, OPPO R9等
	Ages      []UserPortraitItem `json:"ages"`      // 年龄,包括17岁以下、18-24对等区间
}

UserPortrait 用户画像

type UserPortraitItem

type UserPortraitItem struct {
	ID                  int    `json:"id"`                     // 属性值id
	Name                string `json:"name"`                   // 属性值名称
	AccessSourceVisitUV int    `json:"access_source_visit_uv"` // 该场景访问uv
}

UserPortraitItem 用户画像项目

type VisitDistributionIndex

type VisitDistributionIndex struct {
	Index    string                       `json:"index"`     // 分布类型
	ItemList []VisitDistributionIndexItem `json:"item_list"` // 分布数据列表
}

VisitDistributionIndex 访问分布单分布类型数据

type VisitDistributionIndexItem

type VisitDistributionIndexItem struct {
	Key                 int `json:"key"`                    // 场景id
	Value               int `json:"value"`                  // 该场景id访问pv
	AccessSourceVisitUV int `json:"access_source_visit_uv"` // 该场景id访问uv
}

VisitDistributionIndexItem 访问分数数据结构

type VisitPageItem

type VisitPageItem struct {
	PagePath       string  `json:"page_path"`        // 页面路径
	PageVisitPV    int     `json:"page_visit_pv"`    // 访问次数
	PageVisitUV    int     `json:"page_visit_uv"`    // 访问人数
	PageStaytimePV float64 `json:"page_staytime_pv"` // 次均停留时常
	EntrypagePV    int     `json:"entrypage_pv"`     // 进入页次数
	ExitpagePV     int     `json:"exitpage_pv"`      // 退出页次数
	PageSharePV    int     `json:"page_share_pv"`    // 转发次数
	PageShareUV    int     `json:"page_share_uv"`    // 转发人数
}

VisitPageItem 访问单个页面的数据结构

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL