itsky365 / weapp

GO 微信小程序 SDK

Home Page:https://godoc.org/github.com/medivhzhan/weapp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

title

注意

  • 1.x 版本入口
  • 2.0 版本开始支付相关内容会分离到一个单独的包。
  • 文档按照小程序服务端官方文档排版,方便您一一对照查找相关内容。
  • 目前 v2 还在测试阶段,请勿用于生产环境。

获取代码

go get -u github.com/medivhzhan/weapp

目录


用户登录

code2Session

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.Login("mock-appid", "mock-secret", "mock-code")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

用户信息

getPaidUnionId

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetPaidUnionID("mock-access-token", "mock-open-id", "mock-transaction-id")
// 或者
res, err := weapp.GetPaidUnionIDWithMCH("mock-access-token", "mock-open-id", "mock-out-trade-number", "mock-mch-id")

if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

接口调用凭证

getAccessToken

调用次数有限制 请注意缓存

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetAccessToken("mock-appid", "mock-secret")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

数据分析

访问留存

getMonthlyRetain

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetMonthlyRetain("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getWeeklyRetain

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetWeeklyRetain("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getDailyRetain

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetDailyRetain("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

访问趋势

getMonthlyVisitTrend

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetMonthlyVisitTrend("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getWeeklyVisitTrend

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetWeeklyVisitTrend("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getDailyVisitTrend

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetDailyVisitTrend("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getUserPortrait

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetUserPortrait("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getVisitDistribution

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetVisitDistribution("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getVisitPage

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetVisitPage("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getDailySummary

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetDailySummary("mock-access-token", "mock-begin-date", "mock-end-date")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

客服消息

setTyping

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.SetTyping("mock-access-token", "mock-open-id", "mock-command")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

uploadTempMedia

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.UploadTempMedia("mock-access-token", "mock-media-type", "mock-media-filename")
// 或者
res, err := weapp.uploadTempMediaByURL("mock-access-token", "mock-media-type", "mock-media-url") // 通过 URL 上传
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getTempMedia

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetTempMedia("mock-access-token", "mock-media-id")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

sendCustomerServiceMessage

官方文档

import "github.com/medivhzhan/weapp"


// 文本消息
msg := CSMsgText{
    Content: "mock-content",
},
// 或者
// 图片消息
msg := CSMsgImage{
    MediaID: "mock-media-id",
},
// 或者
// 链接消息
msg := CSMsgLink{
    Title:       "mock-title",
    Description: "mock-description",
    URL:         "mock-url",
    ThumbURL:    "mock-thumb-url",
},
// 或者
// 小程序卡片消息
msg := CSMsgMPCard{
    Title:        "mock-title",
    PagePath:     "mock-page-path",
    ThumbMediaID: "mock-thumb-media-id",
},

res, err := msg.SendTo("mock-open-id", "mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

模板消息

addTemplate

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.AddTemplate("mock-template-id", "mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

deleteTemplate

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.DeleteTemplate("mock-template-id", "mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getTemplateLibraryById

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetTemplateLibraryByID("mock-template-id", "mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getTemplateLibraryList

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetTemplateLibraryList("mock-access-token", 0, 10)
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

getTemplateList

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.GetTemplateList("mock-access-token", 0, 10)
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

sendTemplateMessage

官方文档

import "github.com/medivhzhan/weapp"

sender := TempMsgSender{
    ToUser:     "mock-open-id",
    TemplateID: "mock-template-id",
    Page:       "mock/page?foo=bar",
    FormID:     "mock-form-id",
    Data: TempMsgData{
        "mock-key-word1": TempMsgKeyword{"mock-template-value1"},
        "mock-key-word2": TempMsgKeyword{"mock-template-value2"},
    },
    EmphasisKeyword: "mock-open-id",
}

res, err := sender.Send("mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

统一服务消息

sendUniformMessage

官方文档

import "github.com/medivhzhan/weapp"

sender := UniformMsgSender{
    ToUser: "mock-open-id",
    UniformMPMsg: UniformMPMsg{
        TemplateID: "mock-template-id",
        Page:       "mock-page",
        FormID:     "mock-form-id",
        Data: UniformMsgData{
            "mock-keyword": UniformMsgKeyword{Value: "mock-value"},
        },
        EmphasisKeyword: "mock-keyword.DATA",
    },
    UniformOAMsg: UniformOAMsg{
        AppID:       "mock-app-id",
        TemplateID:  "mock-template-id",
        URL:         "mock-url",
        Miniprogram: UniformMsgMiniprogram{"mock-miniprogram-app-id", "mock-page-path"},
        Data: UniformMsgData{
            "mock-keyword": UniformMsgKeyword{"mock-value", "mock-color"},
        },
    },
}

_, err := sender.Send("mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

动态消息

createActivityId

官方文档

import "github.com/medivhzhan/weapp"

res, err := weapp.CreateActivityId("mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

setUpdatableMsg

官方文档

import "github.com/medivhzhan/weapp"


setter := UpdatableMsgSetter{
    "mock-activity-id",
    UpdatableMsgJoining,
    UpdatableMsgTempInfo{
        []UpdatableMsgParameter{
            {UpdatableMsgParamMemberCount, "mock-parameter-value-number"},
            {UpdatableMsgParamRoomLimit, "mock-parameter-value-number"},
        },
    },
}

res, err := setter.Set("mock-access-token")
if err != nil {
    // 处理一般错误信息
    return
}

if err := res.GetResponseError(); err !=nil {
    // 处理微信返回错误信息
    return
}

fmt.Printf("返回结果: %#v", res)

About

GO 微信小程序 SDK

https://godoc.org/github.com/medivhzhan/weapp

License:Apache License 2.0


Languages

Language:Go 100.0%