我正在为 google oauth2 https://github.com/golang/oauth2使用以下库
我正在使用示例中给出的代码(网址:http : //play.golang.org/p/qXyuaVEhyS,https : //godoc.org/golang.org/x/oauth2/google)
我能够获取授权码和令牌,但无法发出获取用户信息的请求
我的代码:
conf := &oauth2.Config{
ClientID: "my client id",
ClientSecret: "secred id",
RedirectURL: "http://localhost:3000/googlelogin",
Scopes: []string{
"https://www.googleapis.com/auth/userinfo.profile",
},
Endpoint: google.Endpoint,
}
m.Get("/googleloginrequest", func(r render.Render, request *http.Request) {
url := conf.AuthCodeURL("state")
fmt.Printf("Visit the URL for the auth dialog: %v", url)
r.Redirect(url)
})
m.Get("/googlelogin", func(r render.Render, request *http.Request) {
authcode := request.FormValue("code")
tok, err := conf.Exchange(oauth2.NoContext, authcode)
if err != nil {
log.Fatal(err)
}
client := conf.Client(oauth2.NoContext, tok)
resp, err :=client.Get("https://www.googleapis.com/userinfo/v2/me")
r.JSON(200, map[string]interface{}{"status":resp})
})
我在这里得到的回应非常大而且没有任何用户信息
相关分类