|
- package main
-
- import (
- "encoding/json"
- "fmt"
- "io/ioutil"
- "log"
- "net/http"
- )
-
- func onSubscribe(in InWechatMsg) {
- openID := in.header.FromUserName
- log.Println(openID)
- }
-
- /*
- {
- "subscribe": 1,
- "openid": "o6_bmjrPTlm6_2sgVt7hMZOPfL2M",
- "nickname": "Band",
- "sex": 1,
- "language": "zh_CN",
- "city": "广州",
- "province": "广东",
- "country": "中国",
-
- "headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
- "subscribe_time": 1382694957,
- "unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
- "remark": "",
-
- "groupid": 0,
-
- "tagid_list":[128,2]
- }
- */
- type WechatUserInfo struct {
- Subscribe int32 `json:"subscribe"`
- OpenID string `json:"openid"`
- NickName string `json:"nickname"`
- Sex int32 `json:"sex"`
- Language string `json:"language"`
- City string `json:"city"`
- Province string `json:"province"`
- Country string `json:"country"`
- Avatar string `json:"headimgurl"`
- SubscribeTime int32 `json:"subscribe_time"`
- UnionID string `json:"unionid"`
- Remark string `json:"remark"`
- GroupID int32 `json:"groupid"`
- TagIDList []int32 `json:"tagid_list"`
- }
-
- func getUserInfo(openID string, lang string) (result WechatUserInfo) {
- url := result.getURL(openID, lang)
- resp, err := http.Get(url)
- if err != nil {
- }
- b, err := ioutil.ReadAll(resp.Body)
- err = json.Unmarshal(b, &result)
- return
- }
-
- func (m *WechatUserInfo) getURL(openID, lang string) string {
- atk, _ := GetAccessToken()
- u := fmt.Sprintf("https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s&lang=%s", atk, openID, lang)
- return u
- }
-
- func getURL() {
-
- }
|