Paquete google.golang.org/appengine (v1.6.8)

El paquete de appengine proporciona una funcionalidad básica para Google App Engine.

Para obtener más información sobre cómo escribir aplicaciones de Go para Google App Engine, consulta: https://cloud.google.com/appengine/docs/go/

Variables

Middleware

var Middleware func(http.Handler) http.Handler = internal.Middleware

Middleware une un controlador http para que pueda realizar llamadas a la API de GAE

Funciones

func APICall

func APICall(ctx context.Context, service, method string, in, out proto.Message) error

APICall realiza una llamada a la API.

No está diseñado para uso general. Se exporta para su uso junto con WithAPICallFunc.

func AccessToken

func AccessToken(c context.Context, scopes string) (token string, expiry time.Time, err error)

AccessToken genera un token de acceso OAuth2 para los alcances especificados en nombre de la cuenta de servicio de esta aplicación. Este token vencerá después del tiempo que se muestra.

func AppID

func AppID(c context.Context) string

AppID muestra el ID de la aplicación para la aplicación actual. La string será un ID de aplicación simple (p. ej., “appid”), con un prefijo de dominio para implementaciones de dominio personalizadas (p. ej., “example.com:appid”).

func BackgroundContext (obsoleta)

func BackgroundContext() context.Context

BackgroundContext muestra un contexto no asociado con una solicitud.

Obsoleto: App Engine ya no tiene un contexto especial en segundo plano. Solo usa context.Background().

func Datacenter

func Datacenter(c context.Context) string

Datacenter muestra un identificador para el centro de datos en el que se ejecuta la instancia.

func DefaultVersionHostname

func DefaultVersionHostname(c context.Context) string

DefaultVersionHostname muestra el nombre de host estándar de la versión predeterminada de la aplicación actual (p. ej., “my-app.appspot.com”). Esto es adecuado para construir URL.

func InstanceID

func InstanceID() string

InstanceID muestra un identificador mayormente único para esta instancia.

func IsAppEngine

func IsAppEngine() bool

IsAppEngine informa si la app de App Engine se ejecuta en App Engine, ya sea en el entorno estándar o flexible.

func IsDevAppServer

func IsDevAppServer() bool

IsDevAppServer informa si la aplicación de App Engine se está ejecutando en el servidor de aplicaciones de desarrollo.

func IsFlex

func IsFlex() bool

IsFlex informa si la app de App Engine se ejecuta en el entorno flexible.

func IsOverQuota

func IsOverQuota(err error) bool

IsOverQuota informa si err representa una falla en la llamada a la API debido a una cuota disponible insuficiente.

func IsSecondGen

func IsSecondGen() bool

IsSecondsGen informa si la app de App Engine se ejecuta en entornos de ejecución de segunda generación (>= Go 1.11).

func IsStandard

func IsStandard() bool

IsStandard informa si la app de App Engine se ejecuta en el entorno estándar. Esto incluye los entornos de ejecución de primera generación (<= Go 1.9) y los entornos de ejecución de segunda generación (>= Go 1.11).

func IsTimeoutError

func IsTimeoutError(err error) bool

IsTimeoutError informa si err es un error de tiempo de espera.

func Main

func Main()

Main es el punto de entrada principal de una aplicación que se ejecuta en App Engine.

En el entorno flexible de App Engine, instala un verificador de estado trivial si aún no se registró y comienza a escuchar en el puerto 8080 (anulado por la variable de entorno $PORT).

Consulta https://cloud.google.com/appengine/docs/flexible/custom-runtimes#health_check_requests para obtener detalles sobre cómo realizar tu propia verificación de estado.

En el entorno estándar de App Engine, se garantiza que el servidor se haya iniciado y esté preparado para recibir solicitudes.

Main nunca se muestra.

Main está diseñado para que el paquete principal de la app se vea así:

package main

import (
        "google.golang.org/appengine"

        _ "myapp/package0"
        _ "myapp/package1"
)

func main() {
        appengine.Main()
}

Se espera que los paquetes “myapp/packageX” registren controladores HTTP en sus funciones init.

func ModuleHostname

func ModuleHostname(c context.Context, module, version, instance string) (string, error)

ModuleHostname muestra un nombre de host de una instancia del módulo. Si el módulo corresponde a la string vacía, se refiere al módulo de la instancia actual. Si la versión está vacía, se refiere a la versión de la instancia actual si es válida, o la versión predeterminada del módulo de la instancia actual. Si la instancia está vacía, ModuleHostname muestra el nombre de host del balanceo de cargas.

func ModuleName

func ModuleName(c context.Context) string

ModuleName muestra el nombre del módulo de la instancia actual.

func Namespace

func Namespace(c context.Context, namespace string) (context.Context, error)

Namespace muestra un contexto de reemplazo que opera dentro del espacio de nombres dado.

func NewContext

func NewContext(req *http.Request) context.Context

NewContext muestra un contexto para una solicitud HTTP en tránsito. Esta función es económica.

func RequestID

func RequestID(c context.Context) string

RequestID muestra una string que identifica la solicitud de forma única.

func ServerSoftware

func ServerSoftware() string

ServerSoftware muestra la versión de lanzamiento de App Engine. En producción, se parece a “Google App Engine/X.Y.Z”. En el servidor de aplicaciones de desarrollo, se ve como “Desarrollo/X.Y”.

func ServiceAccount

func ServiceAccount(c context.Context) (string, error)

ServiceAccount muestra una string que representa el nombre de la cuenta de servicio, en el formato de una dirección de correo electrónico (generalmente, app_id@appspot.gserviceaccount.com).

func SignBytes

func SignBytes(c context.Context, bytes []byte) (keyName string, signature []byte, err error)

SignBytes firma bytes mediante una clave privada única para tu aplicación.

func VersionID

func VersionID(c context.Context) string

VersionID muestra el ID de la versión para la aplicación actual. Tendrá el formato “X.Y”, en el cual X se especifica en app.yaml y en el cual Y es un número generado cuando se sube cada versión de la aplicación. No incluye un nombre de módulo.

func WithAPICallFunc

func WithAPICallFunc(ctx context.Context, f APICallFunc) context.Context

WithAPICallFunc muestra una copia del contexto superior que hará que las llamadas a la API invoquen f en lugar de su funcionamiento normal.

Esto está diseñado solo para los usuarios avanzados.

func WithContext

func WithContext(parent context.Context, req *http.Request) context.Context

WithContext muestra una copia del contexto superior y lo asocia con una solicitud HTTP en tránsito. Esta función es económica.

APICallFunc

type APICallFunc func(ctx context.Context, service, method string, in, out proto.Message) error

APICallFunc define un tipo de función para controlar una llamada a la API. Consulta WithCallOverride.

BlobKey

type BlobKey string

BlobKey es una clave para un BLOB de blobstore.

Conceptualmente, este tipo pertenece al paquete de blobstore, pero se aloja en el paquete de appengine para evitar una dependencia circular: blobstore depende de datastore y datastore debe hacer referencia al tipo BlobKey.

Certificado

type Certificate struct {
	KeyName string
	Data    []byte // PEM-encoded X.509 certificate
}

Certificate representa un certificado público para la aplicación.

func PublicCertificates

func PublicCertificates(c context.Context) ([]Certificate, error)

PublicCertificates recupera los certificados públicos de la aplicación. Se pueden usar para verificar una firma que muestra SignBytes.

GeoPoint

type GeoPoint struct {
	Lat, Lng float64
}

GeoPoint representa una ubicación como latitud/longitud en grados.

func (GeoPoint) Valid

func (g GeoPoint) Valid() bool

Valid muestra si un GeoPoint está dentro de [-90, 90] de latitud y [-180, 180] de longitud.

MultiError

type MultiError []error

Las operaciones por lotes muestran MultiError cuando hay errores con elementos específicos. Los errores se producirán en una correspondencia uno a uno con los elementos de entrada. Los elementos exitosos tendrán una entrada nil.

func (MultiError) Error

func (m MultiError) Error() string