oauth2: golang.org/x/oauth2/internal Index | Files

package internal

import "golang.org/x/oauth2/internal"

Package internal contains support packages for oauth2 package.


Package Files

doc.go oauth2.go token.go transport.go

func ContextClient Uses

func ContextClient(ctx context.Context) *http.Client

func ParseKey Uses

func ParseKey(key []byte) (*rsa.PrivateKey, error)

ParseKey converts the binary contents of a private key file to an *rsa.PrivateKey. It detects whether the private key is in a PEM container or not. If so, it extracts the the private key from PEM container before conversion. It only supports PEM containers with no passphrase.

func RegisterBrokenAuthHeaderProvider Uses

func RegisterBrokenAuthHeaderProvider(tokenURL string)

RegisterBrokenAuthHeaderProvider previously did something. It is now a no-op.

Deprecated: this function no longer does anything. Caller code that wants to avoid potential extra HTTP requests made during auto-probing of the provider's auth style should set Endpoint.AuthStyle.

func ResetAuthCache Uses

func ResetAuthCache()

ResetAuthCache resets the global authentication style cache used for AuthStyleUnknown token requests.

type AuthStyle Uses

type AuthStyle int

AuthStyle is a copy of the golang.org/x/oauth2 package's AuthStyle type.

const (
    AuthStyleUnknown  AuthStyle = 0
    AuthStyleInParams AuthStyle = 1
    AuthStyleInHeader AuthStyle = 2

type ContextKey Uses

type ContextKey struct{}

ContextKey is just an empty struct. It exists so HTTPClient can be an immutable public variable with a unique type. It's immutable because nobody else can create a ContextKey, being unexported.

var HTTPClient ContextKey

HTTPClient is the context key to use with golang.org/x/net/context's WithValue function to associate an *http.Client value with a context.

type RetrieveError Uses

type RetrieveError struct {
    Response *http.Response
    Body     []byte

func (*RetrieveError) Error Uses

func (r *RetrieveError) Error() string

type Token Uses

type Token struct {
    // AccessToken is the token that authorizes and authenticates
    // the requests.
    AccessToken string

    // TokenType is the type of token.
    // The Type method returns either this or "Bearer", the default.
    TokenType string

    // RefreshToken is a token that's used by the application
    // (as opposed to the user) to refresh the access token
    // if it expires.
    RefreshToken string

    // Expiry is the optional expiration time of the access token.
    // If zero, TokenSource implementations will reuse the same
    // token forever and RefreshToken or equivalent
    // mechanisms for that TokenSource will not be used.
    Expiry time.Time

    // Raw optionally contains extra metadata from the server
    // when updating a token.
    Raw interface{}

Token represents the credentials used to authorize the requests to access protected resources on the OAuth 2.0 provider's backend.

This type is a mirror of oauth2.Token and exists to break an otherwise-circular dependency. Other internal packages should convert this Token into an oauth2.Token before use.

func RetrieveToken Uses

func RetrieveToken(ctx context.Context, clientID, clientSecret, tokenURL string, v url.Values, authStyle AuthStyle) (*Token, error)

Package internal imports 18 packages (graph) and is imported by 31 packages. Updated 2019-06-04. Refresh now. Tools for package owners.