...

Package transport

import "google.golang.org/api/transport"
Overview
Index
Examples
Subdirectories

Overview ▾

Package transport provides utility methods for creating authenticated transports to Google's HTTP and gRPC APIs. It is intended to be used in conjunction with google.golang.org/api/option.

This package is not intended for use by end developers. Use the google.golang.org/api/option package to configure API clients.

Example (ApplicationDefaultCredentials)

Code:

ctx := context.Background()

// Providing no auth option will cause NewClient to look for Application
// Default Creds as specified at https://godoc.org/golang.org/x/oauth2/google#FindDefaultCredentials.
//
// Note: Given the same set of options, transport.NewHTTPClient and
// transport.DialGRPC use the same credentials.
c, _, err := transport.NewHTTPClient(ctx)
if err != nil {
    log.Fatal(err)
}
_ = c // Use authenticated client.

Example (WithCredentialsFile)

Code:

ctx := context.Background()

// Download service account creds per https://cloud.google.com/docs/authentication/production.
//
// Note: Given the same set of options, transport.NewHTTPClient and
// transport.DialGRPC use the same credentials.
c, _, err := transport.NewHTTPClient(ctx, option.WithCredentialsFile("/path/to/service-account-creds.json"))
if err != nil {
    log.Fatal(err)
}
_ = c // Use authenticated client.

func Creds

func Creds(ctx context.Context, opts ...option.ClientOption) (*google.Credentials, error)

Creds constructs a google.Credentials from the information in the options, or obtains the default credentials in the same way as google.FindDefaultCredentials.

func DialGRPC

func DialGRPC(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientConn, error)

DialGRPC returns a GRPC connection for use communicating with a Google cloud service, configured with the given ClientOptions.

func DialGRPCInsecure

func DialGRPCInsecure(ctx context.Context, opts ...option.ClientOption) (*grpc.ClientConn, error)

DialGRPCInsecure returns an insecure GRPC connection for use communicating with fake or mock Google cloud service implementations, such as emulators. The connection is configured with the given ClientOptions.

func NewHTTPClient

func NewHTTPClient(ctx context.Context, opts ...option.ClientOption) (*http.Client, string, error)

NewHTTPClient returns an HTTP client for use communicating with a Google cloud service, configured with the given ClientOptions. It also returns the endpoint for the service as specified in the options.

Subdirectories

Name Synopsis
..
bytestream Package bytestream provides a client for any service that exposes a ByteStream API.
grpc Package grpc supports network connections to GRPC servers.
http Package http supports network connections to HTTP servers.