• Go开发微信小程序SDK推荐以及简单示例


    最近准备用Go语言开发微信小程序,发现会调用很多微信小程序的服务端接口,并且还需要自己封装。于是想着去GitHub上看看,是否有第三方现成的SDK直接拿来使用,结果发现两个非常不错的第三方库。

    SDK标准:
    这里罗列几点,个人在使用第三方开源库的一些标准版,供大家参考:

    功能稳定,有上生产环境的案例。避免出现SDK问题,需要开发者自己解决。

    开发团队稳定,持续更新。避免出现bug后期无人修复,出现一种类似KPI的开源项目。

    功能足够强大。毕竟是使用开源SDK,就是为了减少自己去开发一些额外的功能,把精力更多的用在实现业务上。

    完善的文档。一个再好的开源项目,如果没有一个完善的文档,这无疑给使用者增加了一个门槛,同时也降低了开发效率,达不到直接使用第三方SDK的目的。


    easywechat
    用PHP开发过微信生态的产品,估计都知道easywechat是一个开源的、非官方的第三方SDK。功能强大、安装和使用非常简单,因为它是一个标准的 Composer 包,这意味着任何满足下列安装条件的 PHP 项目支持 Composer 都可以使用它。直接使用下面的命令,安装就可以正常使用了。

    composer require overtrue/wechat
    
    • 1

    powerwechat
    PowerWeChat是一款简单易用的WeChat SDK for Golang目前已经覆盖微信公众号、微信小程序、微信支付、企业微信。功能非常的强大,几乎是把微信生态的产品都包含在内。在选择它主要基于下面几个目的:

    功能强大,完整的微信生态覆盖。涵盖了微信公众号、微信小程序、微信企业号和微信支付。基本我们接触的微信开发,也都是这几个类目。所以足够我们使用了。

    开发团队稳定。PowerWechat由Artisan Cloud团队潜心研发并且也在持续更新和完善当中。

    完善的文档。PowerWechat有属于自己的官网,不管是微信公众号、微信小程序、微信企业号和微信支付都有独立的模块介绍如何使用,同时也有完整的示例代码。如下微信企业号开发,如何配置每一个参数定义都有很好的说明。

    package main
    
    import (
      "log"
    )
    
    func main() {
      WeComApp, err := work.NewWork(&work.UserConfig{
        CorpID:  "app_id",       // 企业微信的app id,所有企业微信共用一个。
        AgentID: 100001,         // 内部应用的app id
        Secret:  "wecom_secret", // 内部应用的app secret
        OAuth: work.OAuth{
          Callback: "https://wecom.artisan-cloud.com/callback",
          Scopes:   nil,
        },
        HttpDebug: true,
      })
      if err != nil {
        panic(err)
      }
      response := WeComApp.Base.GetCallbackIp()
      log.Println(response)
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    go-wechat-miniapp-sdk
    go-wechat-miniapp-sdk基于微信小程序相关接口封装,使用golang语言封装的一套微信小程序官方接口SDK。支持如下功能:

    登录|用户信息
    订阅消息
    客服消息
    统一服务消息
    获取小程序码

    该SDK同样的,使用起来很简单,也能很快的上手。

    下面是该SDK安装方法。

    go get github.com/dgb8901/go-wechat-miniapp-sdk
    
    • 1

    下面是基础信息配置:

    package helper
    
    import (
        "github.com/dgb8901/go-wechat-miniapp-sdk/config"
        "github.com/dgb8901/go-wechat-miniapp-sdk/service"
    )
    
    type wxaHelper struct {
        wxaService *service.WxaService
    }
    
    var helper = &wxaHelper{}
    
    func Init() {
    
        cfg := &config.Cfg{
            AppId:         "AppId",
            Secret:        "Secret",
            Token:         "Token",
            AesKey:        "AesKey",
            MsgDataFormat: "DataFormat",
        }
        // wxaConfig := config.NewInRedis(cfg,"127.0.0.1:6379","123456")
        // wxaService := service.NewInRedis(redisConfig)
        wxaConfig := config.NewInMemory(cfg)
        wxaService := service.NewService(wxaConfig)
    
        helper.wxaService = wxaService
    }
    
    func GetWxaService() *service.WxaService {
        return wxaHelper.wxaService
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33

    通过GitHub提交的记录,可以看出这个SDK应该是属于个人开发。没有完整的文档,并且更新时间也很久了。不推荐用于生产环境,如果你是一个想自己学习如何去封装,或者想在这个基础上去实现一个自己的SDK,可以借鉴一下该SDK。

  • 相关阅读:
    光传送网光通道保护应用分析及改进方案
    eunomia-bpf项目重磅开源!eBPF 轻量级开发框架来了
    OpenMV输出PWM,实现对舵机控制
    豪车大洗牌,小米成搅动市场“鲶鱼”
    三谈exception——错误处理
    18、ajax、fetch、axios区别
    IPv6进阶:OSPFv3 路由汇总实验配置
    2022电赛C题:小车跟踪(方案1+核心代码)
    Docker
    [go学习笔记.第十四章.协程和管道] 2.管道
  • 原文地址:https://blog.csdn.net/u014374009/article/details/133231870