This commit is contained in:
2015-03-05 22:04:44 +07:00
parent b070f19510
commit 317ee6e075
7 changed files with 131 additions and 35 deletions
+34 -2
View File
@@ -2,6 +2,8 @@ package task
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"net/url"
@@ -27,6 +29,7 @@ func FetchAccessToken(tk Tasker) {
payload.Set("redirect_uri", config.C().RedirectURI)
buf := bytes.NewBuffer([]byte(payload.Encode()))
fmt.Println("Requesting token")
resp, err := http.Post(config.C().AccessTokenURL, "application/x-www-form-urlencoded", buf)
if err != nil {
panic(err)
@@ -38,7 +41,36 @@ func FetchAccessToken(tk Tasker) {
panic(err)
}
pairs, _ := url.ParseQuery(string(body))
fmt.Println(string(body))
t.Result <- pairs.Get("access_token")
pairs, _ := url.ParseQuery(string(body))
token := pairs.Get("access_token")
fmt.Println("Got token: " + token)
fmt.Println("Requesting info")
resp, err = http.Get("https://api.github.com/user?access_token=" + token)
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, err = ioutil.ReadAll(resp.Body)
if err != nil {
panic(err)
}
fmt.Println(string(body))
user := &db.User{}
json.Unmarshal(body, &user)
user.Save()
fmt.Println("Saving user", user)
tok := &db.Token{
User: user.Login,
Token: token,
}
fmt.Println("Saving token", tok)
tok.Save()
t.Result <- user.Login
}
+3 -2
View File
@@ -24,10 +24,11 @@ func saveResponseMeta(token string, res *github.Response) {
if res == nil {
return
}
db.UpdateToken(&db.Token{
tok := &db.Token{
Token: token,
Limit: res.Limit,
Remaining: res.Remaining,
ResetAt: res.Reset.Time,
})
}
tok.Save()
}