huangjiajun 5712b2b339 | 3 kuukautta sitten | |
---|---|---|
.. | ||
LICENSE | 3 kuukautta sitten | |
Readme.md | 3 kuukautta sitten | |
analysis.go | 3 kuukautta sitten | |
analysis_retain.go | 3 kuukautta sitten | |
analysis_retain_test.go | 3 kuukautta sitten | |
analysis_test.go | 3 kuukautta sitten | |
analysis_visit_trend.go | 3 kuukautta sitten | |
analysis_visit_trend_test.go | 3 kuukautta sitten | |
auth.go | 3 kuukautta sitten | |
auth_test.go | 3 kuukautta sitten | |
common_error.go | 3 kuukautta sitten | |
crypto.go | 3 kuukautta sitten | |
customer_service_message.go | 3 kuukautta sitten | |
customer_service_message_test.go | 3 kuukautta sitten | |
decrypt.go | 3 kuukautta sitten | |
express.go | 3 kuukautta sitten | |
express_business.go | 3 kuukautta sitten | |
express_business_test.go | 3 kuukautta sitten | |
express_provider.go | 3 kuukautta sitten | |
express_provider_test.go | 3 kuukautta sitten | |
face_identify.go | 3 kuukautta sitten | |
img.go | 3 kuukautta sitten | |
img_test.go | 3 kuukautta sitten | |
immediate_delivery.go | 3 kuukautta sitten | |
immediate_delivery_test.go | 3 kuukautta sitten | |
nearby_poi.go | 3 kuukautta sitten | |
nearby_poi_test.go | 3 kuukautta sitten | |
ocr.go | 3 kuukautta sitten | |
ocr_test.go | 3 kuukautta sitten | |
plugin.go | 3 kuukautta sitten | |
plugin_test.go | 3 kuukautta sitten | |
qr_code.go | 3 kuukautta sitten | |
qr_code_test.go | 3 kuukautta sitten | |
search_submit_pages.go | 3 kuukautta sitten | |
search_submit_pages_test.go | 3 kuukautta sitten | |
sec_check.go | 3 kuukautta sitten | |
sec_check_test.go | 3 kuukautta sitten | |
server.go | 3 kuukautta sitten | |
server_types.go | 3 kuukautta sitten | |
soter.go | 3 kuukautta sitten | |
soter_test.go | 3 kuukautta sitten | |
subscribe_message.go | 3 kuukautta sitten | |
subscribe_message_test.go | 3 kuukautta sitten | |
title.png | 3 kuukautta sitten | |
uniform_message.go | 3 kuukautta sitten | |
uniform_message_test.go | 3 kuukautta sitten | |
updatable_message.go | 3 kuukautta sitten | |
updatable_message_test.go | 3 kuukautta sitten | |
util.go | 3 kuukautta sitten | |
weapp.go | 3 kuukautta sitten |
注意
⚠️线上测试
✅ 的接口。
go get -u github.com/medivhzhan/weapp/v2
目录
文档按照小程序服务端官方文档排版,方便您一一对照查找相关内容。
✅: 代表已经通过线上测试 ⚠️: 代表还没有或者未完成
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.Login("appid", "secret", "code")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetPaidUnionID("access-token", "open-id", "transaction-id")
// 或者
res, err := weapp.GetPaidUnionIDWithMCH("access-token", "open-id", "out-trade-number", "mch-id")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
调用次数有限制 请注意缓存
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetAccessToken("appid", "secret")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetDailyRetain("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetWeeklyRetain("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetMonthlyRetain("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetDailySummary("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetDailyVisitTrend("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetWeeklyVisitTrend("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetMonthlyVisitTrend("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetUserPortrait("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetVisitDistribution("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetVisitPage("access-token", "begin-date", "end-date")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
resp, res, err := weapp.GetTempMedia("access-token", "media-id")
if err != nil {
// 处理一般错误信息
return
}
defer resp.Close()
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// 接收并处理异步结果
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
// 文本消息
srv.OnCustomerServiceTextMessage(func(msg *weapp.TextMessageResult) *weapp.TransferCustomerMessage {
reply := weapp.CSMsgText{
Content: "content",
}
res, err := reply.SendTo("open-id", "access-token")
if err != nil {
// 处理一般错误信息
return nil
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return nil
}
return nil
})
// 图片消息
srv.OnCustomerServiceImageMessage(func(msg *weapp.TextMessageResult) *weapp.TransferCustomerMessage {
reply := weapp.CSMsgImage{
MediaID: "media-id",
}
res, err := reply.SendTo("open-id", "access-token")
if err != nil {
// 处理一般错误信息
return nil
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return nil
}
return nil
})
// 小程序卡片消息
srv.OnCustomerServiceCardMessage(func(msg *weapp.TextMessageResult) *weapp.TransferCustomerMessage {
reply := weapp.CSMsgMPCard{
Title: "title",
PagePath: "page-path",
ThumbMediaID: "thumb-media-id",
}
res, err := reply.SendTo("open-id", "access-token")
if err != nil {
// 处理一般错误信息
return nil
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return nil
}
return nil
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.SetTyping("access-token", "open-id", weapp.SetTypingCommandTyping)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.UploadTempMedia("access-token", weapp.TempMediaTypeImage, "media-filename")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
sender := weapp.UniformMsgSender{
ToUser: "open-id",
UniformWeappTmpMsg: weapp.UniformWeappTmpMsg{
TemplateID: "template-id",
Page: "page",
FormID: "form-id",
Data: weapp.UniformMsgData{
"keyword": {Value: "value"},
},
EmphasisKeyword: "keyword.DATA",
},
UniformMpTmpMsg: weapp.UniformMpTmpMsg{
AppID: "app-id",
TemplateID: "template-id",
URL: "url",
Miniprogram: weapp.UniformMsgMiniprogram{"miniprogram-app-id", "page-path"},
Data: weapp.UniformMsgData{
"keyword": {"value", "color"},
},
},
}
res, err := sender.Send("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.CreateActivityId("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
setter := weapp.UpdatableMsgSetter{
"activity-id",
UpdatableMsgJoining,
UpdatableMsgTempInfo{
[]UpdatableMsgParameter{
{UpdatableMsgParamMemberCount, "parameter-value-number"},
{UpdatableMsgParamRoomLimit, "parameter-value-number"},
},
},
}
res, err := setter.Set("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.ApplyPlugin("access-token", "plugin-app-id", "reason")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetPluginDevApplyList("access-token", 1, 2)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetPluginList("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.SetDevPluginApplyStatus("access-token", "plugin-app-id", "reason", weapp.DevAgree)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.UnbindPlugin("access-token", "plugin-app-id")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
poi := NearbyPoi{
PicList: PicList{[]string{"first-picture-url", "second-picture-url", "third-picture-url"}},
ServiceInfos: weapp.ServiceInfos{[]weapp.ServiceInfo{
{1, 1, "name", "app-id", "path"},
}},
StoreName: "store-name",
Hour: "11:11-12:12",
Credential: "credential",
Address: "address", // 地址 必填
CompanyName: "company-name", // 主体名字 必填
QualificationList: "qualification-list", // 证明材料 必填 如果company_name和该小程序主体不一致,需要填qualification_list,详细规则见附近的小程序使用指南-如何证明门店的经营主体跟公众号或小程序帐号主体相关http://kf.qq.com/faq/170401MbUnim17040122m2qY.html
KFInfo: weapp.KFInfo{true, "kf-head-img", "kf-name"}, // 客服信息 选填,可自定义服务头像与昵称,具体填写字段见下方示例kf_info pic_list是字符串,内容是一个json!
PoiID: "poi-id", // 如果创建新的门店,poi_id字段为空 如果更新门店,poi_id参数则填对应门店的poi_id 选填
}
res, err := poi.Add("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnAddNearbyPoi(func(mix *weapp.AddNearbyPoiResult) {
// 处理返回结果
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DeleteNearbyPoi("access-token", "poi-id")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetNearbyPoiList("access-token", 1, 10)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.SetNearbyPoiShowStatus("access-token", "poi-id", weapp.ShowNearbyPoi)
// 或者
res, err := weapp.SetNearbyPoiShowStatus("access-token", "poi-id", weapp.HideNearbyPoi)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import (
"ioutil"
"github.com/medivhzhan/weapp/v2"
)
creator := weapp.QRCodeCreator{
Path: "mock/path",
Width: 430,
}
resp, res, err := creator.Create("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
defer resp.Body.Close()
content, err := ioutil.ReadAll(resp.Body)
// 处理图片内容
import (
"ioutil"
"github.com/medivhzhan/weapp/v2"
)
getter := weapp.QRCode{
Path: "mock/path",
Width: 430,
AutoColor: true,
LineColor: weapp.Color{"r", "g", "b"},
IsHyaline: true,
}
resp, res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
defer resp.Body.Close()
content, err := ioutil.ReadAll(resp.Body)
// 处理图片内容
import (
"ioutil"
"github.com/medivhzhan/weapp/v2"
)
getter := weapp.UnlimitedQRCode{
Scene: "scene-data",
Page: "mock/page",
Width: 430,
AutoColor: true,
LineColor: weapp.Color{"r", "g", "b"},
IsHyaline: true,
}
resp, res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
defer resp.Body.Close()
content, err := ioutil.ReadAll(resp.Body)
// 处理图片内容
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.IMGSecCheck("access-token", "local-filename")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.MediaCheckAsync("access-token", "image-url", weapp.MediaTypeImage)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
// 接收并处理异步结果
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnMediaCheckAsync(func(mix *weapp.MediaCheckAsyncResult) {
// 处理返回结果
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.MSGSecCheck("access-token", "message-content")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.AICrop("access-token", "filename")
// 或者
res, err := weapp.AICropByURL("access-token", "url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.ScanQRCode("access-token", "file-path")
// 或者
res, err := weapp.ScanQRCodeByURL("access-token", "qr-code-url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.SuperResolution("access-token", "file-path")
// 或者
res, err := weapp.SuperResolutionByURL("access-token", "img-url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
mocker := weapp.DeliveryOrderUpdater{
// ...
}
res, err := mocker.Update("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnAgentPosQuery(func(mix *weapp.AgentPosQueryResult) *weapp.AgentPosQueryReturn {
// 处理返回结果
return &weapp.AgentPosQueryReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnAuthInfoGet(func(mix *weapp.AuthInfoGetResult) *weapp.AuthInfoGetReturn {
// 处理返回结果
return &weapp.AuthInfoGetReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnCancelAuth(func(mix *weapp.CancelAuthResult) *weapp.CancelAuthReturn {
// 处理返回结果
return &weapp.CancelAuthReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderAdd(func(mix *weapp.DeliveryOrderAddResult) *weapp.DeliveryOrderAddReturn {
// 处理返回结果
return &weapp.DeliveryOrderAddReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderAddTips(func(mix *weapp.DeliveryOrderAddTipsResult) *weapp.DeliveryOrderAddTipsReturn {
// 处理返回结果
return &weapp.DeliveryOrderAddTipsReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderCancel(func(mix *weapp.DeliveryOrderCancelResult) *weapp.DeliveryOrderCancelReturn {
// 处理返回结果
return &weapp.DeliveryOrderCancelReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderReturnConfirm(func(mix *weapp.DeliveryOrderReturnConfirmResult) *weapp.DeliveryOrderReturnConfirmReturn {
// 处理返回结果
return &weapp.DeliveryOrderReturnConfirmReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderPreAdd(func(mix *weapp.DeliveryOrderPreAddResult) *weapp.DeliveryOrderPreAddReturn {
// 处理返回结果
return &weapp.DeliveryOrderPreAddReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderPreCancel(func(mix *weapp.DeliveryOrderPreCancelResult) *weapp.DeliveryOrderPreCancelReturn {
// 处理返回结果
return &weapp.DeliveryOrderPreCancelReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderQuery(func(mix *weapp.DeliveryOrderQueryResult) *weapp.DeliveryOrderQueryReturn {
// 处理返回结果
return &weapp.DeliveryOrderQueryReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderReadd(func(mix *weapp.DeliveryOrderReaddResult) *weapp.DeliveryOrderReaddReturn {
// 处理返回结果
return &weapp.DeliveryOrderReaddReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnPreAuthCodeGet(func(mix *weapp.PreAuthCodeGetResult) *weapp.PreAuthCodeGetReturn {
// 处理返回结果
return &weapp.PreAuthCodeGetReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnRiderScoreSet(func(mix *weapp.RiderScoreSetResult) *weapp.RiderScoreSetReturn {
// 处理返回结果
return &weapp.PreAuthCodeGetReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
confirmer := weapp.AbnormalConfirmer{
ShopID: "123456",
ShopOrderID: "123456",
ShopNo: "shop_no_111",
WaybillID: "123456",
Remark: "remark",
DeliverySign: "123456",
}
res, err := confirmer.Confirm("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
creator := weapp.DeliveryOrderCreator{
// ...
}
res, err := creator.Create("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
adder := weapp.DeliveryTipAdder{
// ...
}
res, err := adder.Add("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
canceler := weapp.DeliveryOrderCanceler{
// ...
}
res, err := canceler.Cancel("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetAllImmediateDelivery("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetBindAccount("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
getter := weapp.DeliveryOrderGetter{
// ...
}
res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
mocker := weapp.UpdateDeliveryOrderMocker{
// ...
}
res, err := mocker.Mock("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnDeliveryOrderStatusUpdate(func(mix *weapp.DeliveryOrderStatusUpdateResult) *weapp.DeliveryOrderStatusUpdateReturn {
// 处理返回结果
return &weapp.DeliveryOrderStatusUpdateReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
creator := weapp.DeliveryOrderCreator{
// ...
}
res, err := creator.Prepare("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
canceler := weapp.DeliveryOrderCanceler{
// ...
}
res, err := canceler.Prepare("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
creator := weapp.DeliveryOrderCreator{
// ...
}
res, err := creator.Recreate("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
creator := weapp.ExpressOrderCreator{
// ...
}
res, err := creator.Create("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
canceler := weapp.ExpressOrderCanceler{
// ...
}
res, err := canceler.cancel("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.getAllDelivery("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
getter := weapp.ExpressOrderGetter{
// ...
}
res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
getter := weapp.ExpressPathGetter{
// ...
}
res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetPrinter("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
getter := weapp.QuotaGetter{
// ...
}
res, err := getter.Get("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnExpressPathUpdate(func(mix *weapp.ExpressPathUpdateResult) {
// 处理返回结果
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
tester := weapp.UpdateExpressOrderTester{
// ...
}
res, err := tester.Test("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
updater := weapp.PrinterUpdater{
// ...
}
res, err := updater.Update("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.GetContact("access-token", "token", "wat-bill-id")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnAddExpressOrder(func(mix *weapp.AddExpressOrderResult) *weapp.AddExpressOrderReturn {
// 处理返回结果
return &weapp.AddExpressOrderReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnCancelExpressOrder(func(mix *weapp.CancelExpressOrderResult) *weapp.CancelExpressOrderReturn {
// 处理返回结果
return &weapp.CancelExpressOrderReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnCheckExpressBusiness(func(mix *weapp.CheckExpressBusinessResult) *weapp.CheckExpressBusinessReturn {
// 处理返回结果
return &weapp.CheckExpressBusinessReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
srv, err := weapp.NewServer("app-id", "token", "aes-key", "mch-id", "api-key", true)
if err != nil {
// 处理微信返回错误信息
return
}
srv.OnGetExpressQuota(func(mix *weapp.GetExpressQuotaResult) *weapp.GetExpressQuotaReturn {
// 处理返回结果
return &weapp.GetExpressQuotaReturn{
// ...
}
})
if err := srv.Serve(http.ResponseWriter, *http.Request); err != nil {
// 处理微信返回错误信息
return
}
import "github.com/medivhzhan/weapp/v2"
previewer := weapp.ExpressTemplatePreviewer{
// ...
}
res, err := previewer.Preview("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
updater := weapp.BusinessUpdater{
// ...
}
res, err := updater.Update("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
updater := weapp.ExpressPathUpdater{
// ...
}
res, err := updater.Update("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.BankCard("access-token", "file-path", weapp.RecognizeModeScan)
// 或者
res, err := weapp.BankCardByURL("access-token", "card-url", weapp.RecognizeModePhoto)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.BusinessLicense("access-token", "file-path")
// 或者
res, err := weapp.BusinessLicenseByURL("access-token", "card-url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DriverLicense("access-token", "file-path")
// 或者
res, err := weapp.DriverLicenseByURL("access-token", "card-url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.IDCardByURL("access-token", "card-url", weapp.RecognizeModePhoto)
// 或者
res, err := weapp.IDCard("access-token", "file-path", weapp.RecognizeModeScan)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.PrintedText("access-token", "file-path")
// 或者
res, err := weapp.PrintedTextByURL("access-token", "card-url")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.VehicleLicense("access-token", "file-path", weapp.RecognizeModeScan)
// 或者
res, err := weapp.VehicleLicenseByURL("access-token", "card-url", weapp.RecognizeModePhoto)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
sender := weapp.SearchSubmitPages{
[]weapp.SearchSubmitPage{
{
Path: "pages/index/index",
Query: "id=test",
},
},
}
res, err := sender.Send("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.VerifySignature("access-token", "open-id", "data", "signature")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// AddTemplate 组合模板并添加至帐号下的个人模板库
//
// token 微信 access_token
// tid 模板ID
// desc 服务场景描述,15个字以内
// keywordIDList 关键词 ID 列表
res, err := weapp.AddTemplate("access_token", "tid", "desc", []int32{1, 2, 3})
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// DeleteTemplate 删除帐号下的某个模板
//
// token 微信 access_token
// pid 模板ID
res, err := weapp.DeleteTemplate("access_token", "pid")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// GetTemplateCategory 删除帐号下的某个模板
//
// token 微信 access_token
res, err := weapp.GetTemplateCategory("access_token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// GetPubTemplateKeyWordsById 获取模板标题下的关键词列表
//
// token 微信 access_token
// tid 模板ID
res, err := weapp.GetPubTemplateKeyWordsById("access_token", "tid")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// GetPubTemplateTitleList 获取帐号所属类目下的公共模板标题
//
// token 微信 access_token
// ids 类目 id,多个用逗号隔开
// start 用于分页,表示从 start 开始。从 0 开始计数。
// limit 用于分页,表示拉取 limit 条记录。最大为 30
res, err := weapp.GetPubTemplateTitleList("access_token", "1,2,3", 0, 10)
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// GetTemplateList 获取帐号下已存在的模板列表
//
// token 微信 access_token
res, err := weapp.GetTemplateList("access_token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
sender := weapp.SubscribeMessage{
ToUser: mpOpenID,
TemplateID: "template-id",
Page: "mock/page/path",
MiniprogramState: weapp.MiniprogramStateDeveloper, // 或者: "developer"
Data: weapp.SubscribeMessageData{
"first-key": {
Value: "value",
},
"second-key": {
Value: "value",
},
},
}
res, err := sender.Send("access-token")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)
⚠️ 前端应当先完成登录流程再调用获取加密数据的相关接口。
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DecryptMobile("session-key", "encrypted-data", "iv" )
if err != nil {
// 处理一般错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DecryptShareInfo("session-key", "encrypted-data", "iv" )
if err != nil {
// 处理一般错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DecryptUserInfo( "session-key", "raw-data", "encrypted-data", "signature", "iv")
if err != nil {
// 处理一般错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
res, err := weapp.DecryptRunData("session-key", "encrypted-data", "iv" )
if err != nil {
// 处理一般错误信息
return
}
fmt.Printf("返回结果: %#v", res)
import "github.com/medivhzhan/weapp/v2"
// FaceIdentify 获取人脸识别结果
//
// token 微信 access_token
// key 小程序 verify_result
res, err := weapp.FaceIdentify("access_token", "verify_result")
if err != nil {
// 处理一般错误信息
return
}
if err := res.GetResponseError(); err !=nil {
// 处理微信返回错误信息
return
}
fmt.Printf("返回结果: %#v", res)