Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

54 lines
1.3KB

  1. package main
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "io/ioutil"
  6. "log"
  7. "net/http"
  8. )
  9. func onSubscribe(in InWechatMsg) {
  10. openID := in.header.FromUserName
  11. //getUser fromCRM
  12. log.Println(openID)
  13. }
  14. //WechatUserInfo response for wechat user info.
  15. type WechatUserInfo struct {
  16. Subscribe int32 `json:"subscribe"`
  17. OpenID string `json:"openid"`
  18. NickName string `json:"nickname"`
  19. Sex int32 `json:"sex"`
  20. Language string `json:"language"`
  21. City string `json:"city"`
  22. Province string `json:"province"`
  23. Country string `json:"country"`
  24. Avatar string `json:"headimgurl"`
  25. SubscribeTime int32 `json:"subscribe_time"`
  26. UnionID string `json:"unionid"`
  27. Remark string `json:"remark"`
  28. GroupID int32 `json:"groupid"`
  29. TagIDList []int32 `json:"tagid_list"`
  30. }
  31. func getUserInfo(openID string, lang string) (result WechatUserInfo) {
  32. url := result.getURL(openID, lang)
  33. resp, err := http.Get(url)
  34. if err != nil {
  35. }
  36. b, err := ioutil.ReadAll(resp.Body)
  37. err = json.Unmarshal(b, &result)
  38. return
  39. }
  40. func (m *WechatUserInfo) getURL(openID, lang string) string {
  41. atk, _ := GetAccessToken()
  42. u := fmt.Sprintf("https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s&lang=%s", atk, openID, lang)
  43. return u
  44. }
  45. func (m *WechatUserInfo) save2CRM() {
  46. }