wechat.go 1.2KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. package utils
  2. import (
  3. "github.com/astaxie/beego/config"
  4. "github.com/kinisky564477/wechat/component"
  5. )
  6. // Component 微信开放平台
  7. var Component *component.ComponentClient
  8. // ComponentInit 第三方初始化
  9. func ComponentInit() {
  10. // 初始化第三方
  11. // 读取配置文件
  12. conf, err := config.NewConfig("ini", GetAppRoot()+"/conf/wechat.conf")
  13. if err != nil {
  14. LogError("读取微信配置文件失败")
  15. }
  16. var cert = map[string]string{
  17. "appid": conf.String("wechat::appid"),
  18. "aeskey": conf.String("wechat::aeskey"),
  19. "secret": conf.String("wechat::secret"),
  20. }
  21. LogError("微信配置信息:", cert)
  22. Component = component.NewComponentClient(cert)
  23. LogError(Component)
  24. }
  25. // RefreshComponentTicket ticket
  26. func RefreshComponentTicket(ticket string) {
  27. Component.RefreshTicket(ticket)
  28. }
  29. // WechatInit 微信初始化
  30. func WechatInit(cert map[string]string, reflashToken func(map[string]string)) *component.WxClient {
  31. var wechatClient *component.WxClient
  32. wechatClient = component.NewWxClient(
  33. cert,
  34. Component.GetToken,
  35. Component.GetCertificate,
  36. reflashToken,
  37. )
  38. return wechatClient
  39. }
  40. // AppendWxClient 增加微信实例
  41. func AppendWxClient(wx *component.WxClient) {
  42. Component.AppendWxClient(wx)
  43. }