|
@@ -41,10 +41,12 @@ func (wc *Client) getToken() (token string, err error) {
|
|
|
args.Add("secret", wc.AppSecret)
|
|
|
|
|
|
uri += args.Encode()
|
|
|
- var res Response
|
|
|
- if res, err = getJSON(uri); err == nil {
|
|
|
+ var jq *myth.JSONQuery
|
|
|
+ if jq, err = getJSON(uri); err == nil {
|
|
|
wc.LastTokenTime = now
|
|
|
- wc.AccessToken = res.AccessToken
|
|
|
+ var accessToken string
|
|
|
+ accessToken, err = jq.String(`access_token`)
|
|
|
+ wc.AccessToken = accessToken
|
|
|
token = wc.AccessToken
|
|
|
key := key(wc.AppID)
|
|
|
cache.Store(key, wc)
|
|
@@ -73,7 +75,7 @@ func (wc Client) GetCodeURL(redirectURL, state string) (uri string) {
|
|
|
|
|
|
|
|
|
|
|
|
-func (wc Client) GetOpenID(code string) (res Response, err error) {
|
|
|
+func (wc Client) GetOpenID(code string) (jq *myth.JSONQuery, err error) {
|
|
|
uri := BaseURL + "/sns/oauth2/access_token?"
|
|
|
|
|
|
if wc.AccessToken, err = wc.getToken(); err != nil {
|
|
@@ -87,7 +89,7 @@ func (wc Client) GetOpenID(code string) (res Response, err error) {
|
|
|
args.Add("grant_type", "authorization_code")
|
|
|
|
|
|
uri += args.Encode()
|
|
|
- res, err = getJSON(uri)
|
|
|
+ jq, err = getJSON(uri)
|
|
|
|
|
|
return
|
|
|
}
|
|
@@ -165,7 +167,7 @@ func (wc Client) GetMaterial(mtype string, offset, count int) (res Material, err
|
|
|
}
|
|
|
|
|
|
func (wc *Client) getTicket(now int64) (ticket string, err error) {
|
|
|
- var res Response
|
|
|
+ var jq *myth.JSONQuery
|
|
|
if wc.LastTicketTime > 0 {
|
|
|
if now-wc.LastTokenTime < TokenExpires {
|
|
|
ticket = wc.Ticket
|
|
@@ -179,15 +181,13 @@ func (wc *Client) getTicket(now int64) (ticket string, err error) {
|
|
|
|
|
|
uri := BaseURL + "/cgi-bin/ticket/getticket?"
|
|
|
uri += args.Encode()
|
|
|
- if res, err = getJSON(uri); err == nil {
|
|
|
- fmt.Println(res)
|
|
|
+ if jq, err = getJSON(uri); err == nil {
|
|
|
+ ticket, err = jq.String(`ticket`)
|
|
|
wc.LastTicketTime = now
|
|
|
- wc.Ticket = res.Ticket
|
|
|
+ wc.Ticket = ticket
|
|
|
|
|
|
key := key(wc.AppID)
|
|
|
cache.Store(key, wc)
|
|
|
-
|
|
|
- ticket = res.Ticket
|
|
|
}
|
|
|
|
|
|
return
|
|
@@ -228,7 +228,7 @@ func (wc Client) GetSignPackage(uri, nonceStr string) (sign SignPackage, err err
|
|
|
|
|
|
|
|
|
|
|
|
-func (wc Client) SendTemplateMessage(template TemplateMessage) (res Response, err error) {
|
|
|
+func (wc Client) SendTemplateMessage(template TemplateMessage) (jq *myth.JSONQuery, err error) {
|
|
|
uri := BaseURL + "/cgi-bin/message/template/send?"
|
|
|
|
|
|
if wc.AccessToken, err = wc.getToken(); err != nil {
|
|
@@ -242,6 +242,6 @@ func (wc Client) SendTemplateMessage(template TemplateMessage) (res Response, er
|
|
|
if err != nil {
|
|
|
return
|
|
|
}
|
|
|
- res, err = postJSON(uri, data)
|
|
|
+ jq, err = postJSON(uri, data)
|
|
|
return
|
|
|
}
|