我已经开始学习围棋,到目前为止我觉得它很有趣。为了让自己更好地掌握这门语言,我决定使用go-github在 Go 中编写一个 Gister 。
我已经能够使用访问令牌获取我所有的 Gist,并且可以按如下方式打印:
package main
import "fmt"
import "github.com/google/go-github/github"
import "code.google.com/p/goauth2/oauth"
func main() {
t := &oauth.Transport{
Token: &oauth.Token{AccessToken: "secretaccesstokenhere"},
}
client := github.NewClient(t.Client())
gists, _, err := client.Gists.List("", nil)
if err != nil {
fmt.Println(err)
} else {
for _, g := range gists {
fmt.Printf("%v\n\n", g.Files)
}
}
}
我得到以下输出:
map[TODO.md:github.GistFile{Size:166, Filename:"TODO.md", RawURL:"somerawurlhere"}]
map[fourcore.c:github.GistFile{Size:309, Filename:"fourcore.c", RawURL:"somerawurlhere"}]
map[coretest.cpp:github.GistFile{Size:160, Filename:"coretest.cpp", RawURL:"somerawurlhere"}]
我想打印的是“ID / FILENAME”。我知道我需要从上面的地图中提取 Gist 类型和文件名中的 ID,但我无法找到一种方法来做到这一点。我怎么做?帮助将不胜感激。
相关分类