context.go 684 B

12345678910111213141516171819202122232425262728293031
  1. package context
  2. import (
  3. "sync"
  4. "github.com/silenceper/wechat/v2/officialaccount/config"
  5. )
  6. // Context struct
  7. type Context struct {
  8. *config.Config
  9. //accessTokenLock 读写锁 同一个AppID一个
  10. accessTokenLock *sync.RWMutex
  11. //jsAPITicket 读写锁 同一个AppID一个
  12. jsAPITicketLock *sync.RWMutex
  13. //accessTokenFunc 自定义获取 access token 的方法
  14. accessTokenFunc GetAccessTokenFunc
  15. }
  16. // SetJsAPITicketLock 设置jsAPITicket的lock
  17. func (ctx *Context) SetJsAPITicketLock(lock *sync.RWMutex) {
  18. ctx.jsAPITicketLock = lock
  19. }
  20. // GetJsAPITicketLock 获取jsAPITicket 的lock
  21. func (ctx *Context) GetJsAPITicketLock() *sync.RWMutex {
  22. return ctx.jsAPITicketLock
  23. }