我想弄清楚如何使用該包golang.org/x/oauth2在支持 oauth2 的站點上進行身份驗證。我在下面編寫的代碼有效,我只是好奇這是否是使用此特定庫獲取 *http.Client 的正確方法:func handleCallback(w http.ResponseWriter, r *http.Request) { state := r.FormValue("state") if state != oauthStateString { fmt.Printf("invalid oauth state, expected '%s', got '%s'\n", oauthStateString, state) http.Redirect(w, r, "/", http.StatusTemporaryRedirect) return } code := r.FormValue("code") token, err := oauthConf.Exchange(oauth2.NoContext, code) if err != nil { fmt.Printf("oauthConf.Exchange() failed with '%s'\n", err) http.Redirect(w, r, "/", http.StatusTemporaryRedirect) return } ts := oauth2.StaticTokenSource( &oauth2.Token{AccessToken: token.AccessToken}, ) tc := oauth2.NewClient(oauth2.NoContext, ts) // got *http.Client
- 1 回答
- 0 關注
- 446 瀏覽
添加回答
舉報
0/150
提交
取消