如何将自定义客户端传递到Golang oauth2.Exchange

如何将自定义客户端传递到Golang oauth2.Exchange,go,oauth2,Go,Oauth2,oauth2.Exchange的文档说明: 要使用的HTTP客户端是从上下文派生的。如果未通过上下文提供客户端,则使用http.DefaultClient 现在,我已经用自己的设置创建了一个http.Client。如何使用oauth2.Exchange函数?oauth2包定义: HTTPClient是用于golang.org/x/net/context的WithValue函数的上下文键,用于将*http.Client值与上下文关联 在构造要传递给的上下文时,将上述变量用作上下文键: oauth2

oauth2.Exchange的文档说明:

要使用的HTTP客户端是从上下文派生的。如果未通过上下文提供客户端,则使用http.DefaultClient


现在,我已经用自己的设置创建了一个http.Client。如何使用oauth2.Exchange函数?

oauth2包定义:

HTTPClient是用于golang.org/x/net/context的WithValue函数的上下文键,用于将*http.Client值与上下文关联

在构造要传递给的上下文时,将上述变量用作上下文键:


oauth2包定义:

HTTPClient是用于golang.org/x/net/context的WithValue函数的上下文键,用于将*http.Client值与上下文关联

在构造要传递给的上下文时,将上述变量用作上下文键:

var HTTPClient internal.ContextKey
client := &http.Client{
    // TODO
}
parent := oauth2.NoContext()
ctx := context.WithValue(parent, oauth2.HTTPClient, client)
tkn, err := c.Exchange(ctx, code)