diff --git a/access_token.go b/access_token.go index 3e9435e..65f8101 100644 --- a/access_token.go +++ b/access_token.go @@ -37,3 +37,37 @@ func GetAccessToken(appid, secret string) (wx_access_token_res, error) { return data, err } + +/** + * 从微信api取access_token + */ +func getStableAccessToken(appid, secret string) (wx_access_token_res, error) { + var err error + + var data wx_access_token_res + p_data := map[string]interface{}{} + p_data["grant_type"] = "client_credential" + p_data["appid"] = appid + p_data["secret"] = secret + p_data["force_refresh"] = false + + requestDataJson, err := json.Marshal(data) + + if err != nil { + log.Println("getStableAccessToken Marshal err", err) + return data, err + } + + response, err := PostJson("https://api.weixin.qq.com/cgi-bin/stable_token", requestDataJson) + + if err != nil { + log.Println("getStableAccessToken PostJson err", err) + return data, err + } + err = json.Unmarshal(response, &data) + if err != nil { + // 有错,但能解析 + log.Println("getStableAccessToken Unmarshal err", err) + } + return data, err +}