|
@@ -63,7 +63,7 @@ type WxToken struct {
|
|
|
|
|
|
func WxGetToken() (item *WxToken, err error) {
|
|
|
requestUrl := `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=%s&secret=%s`
|
|
|
- requestUrl = fmt.Sprintf(requestUrl, utils.WxAppId, utils.WxAppSecret)
|
|
|
+ requestUrl = fmt.Sprintf(requestUrl, utils.WxPublicAppId, utils.WxPublicAppSecret)
|
|
|
fmt.Println("requestUrl:", requestUrl)
|
|
|
result, err := http.Get(requestUrl)
|
|
|
if err != nil {
|
|
@@ -95,18 +95,6 @@ type WxUserInfo struct {
|
|
|
SessionKey string `json:"session_key"`
|
|
|
}
|
|
|
|
|
|
-//func WxGetUserInfo(openId, accessToken string) (item *WxUserInfo, err error) {
|
|
|
-// requestUrl := `https://api.weixin.qq.com/cgi-bin/user/info?access_token=%s&openid=%s`
|
|
|
-// requestUrl = fmt.Sprintf(requestUrl, accessToken, openId)
|
|
|
-// result, err := http.Get(requestUrl)
|
|
|
-// if err != nil {
|
|
|
-// return
|
|
|
-// }
|
|
|
-// fmt.Println("result:", string(result))
|
|
|
-// err = json.Unmarshal(result, &item)
|
|
|
-// return
|
|
|
-//}
|
|
|
-
|
|
|
func WxGetUserInfo(openId, accessToken string) (item *WxUserInfo, err error) {
|
|
|
requestUrl := `https://api.weixin.qq.com/sns/userinfo?access_token=%s&openid=%s&lang=zh_CN`
|
|
|
requestUrl = fmt.Sprintf(requestUrl, accessToken, openId)
|
|
@@ -139,46 +127,20 @@ type WxUserDetail struct {
|
|
|
|
|
|
func GetWxAccessTokenByXzs() (accessTokenStr string, err error) {
|
|
|
//缓存校验
|
|
|
- //cacheKey := fmt.Sprint("xygxxzs_wxtoken")
|
|
|
- //
|
|
|
- //
|
|
|
- //accessTokenStr, _ = utils.Rc.RedisString("xygxxzs_wxtoken")
|
|
|
- //
|
|
|
- //if accessTokenStr != "" {
|
|
|
- // accessTokens, err := utils.Rc.RedisString("xygxxzs_wxtoken")
|
|
|
- // if err != nil {
|
|
|
- // fmt.Println(err)
|
|
|
- // }
|
|
|
- // fmt.Println("string", accessTokens)
|
|
|
- // accessTokenStr = accessTokens
|
|
|
- //} else {
|
|
|
- // WxAccessToken, err := GetWxTokenByXzs()
|
|
|
- // if err != nil {
|
|
|
- // fmt.Println(err)
|
|
|
- // }
|
|
|
- // utils.Rc.Put(cacheKey, WxAccessToken.AccessToken, time.Second*7000)
|
|
|
- //
|
|
|
- // accessTokenStr = WxAccessToken.AccessToken
|
|
|
- //}
|
|
|
-
|
|
|
- WxAccessToken, err := GetWxTokenByXzs()
|
|
|
- accessTokenStr = WxAccessToken.AccessToken
|
|
|
- return
|
|
|
-}
|
|
|
-
|
|
|
-//获取小助手的微信Token
|
|
|
-func GetWxTokenByXzs() (item *WxAccessToken, err error) {
|
|
|
- getUrl := "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" + utils.WxPublicAppId + "&secret=" + utils.WxPublicAppSecret
|
|
|
- result, err := http.Get(getUrl)
|
|
|
- if err != nil {
|
|
|
+ cacheKey := "xygxxzs_wxtoken"
|
|
|
+ accessTokenStr, err = utils.Rc.RedisString(cacheKey)
|
|
|
+ if accessTokenStr != "" && err == nil {
|
|
|
+ fmt.Println("redis:", accessTokenStr)
|
|
|
return
|
|
|
- }
|
|
|
- err = json.Unmarshal(result, &item)
|
|
|
- if err != nil {
|
|
|
- fmt.Println("GetWxToken Unmarshal Err:%s", err.Error())
|
|
|
- return
|
|
|
- }
|
|
|
- if item.Errmsg != "" {
|
|
|
+ } else {
|
|
|
+ WxAccessToken, errWx := WxGetToken()
|
|
|
+ if errWx != nil {
|
|
|
+ fmt.Println(errWx)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ err = errWx
|
|
|
+ accessTokenStr = WxAccessToken.AccessToken
|
|
|
+ utils.Rc.Put(cacheKey, WxAccessToken.AccessToken, time.Second*7000)
|
|
|
}
|
|
|
return
|
|
|
}
|