Das appengine-Paket bietet grundlegende Funktionen für Google App Engine.
Weitere Informationen zum Schreiben von Go-Anwendungen für Google App Engine finden Sie unter https://cloud.google.com/appengine/docs/go/
Variablen
Middleware
Middleware umschließt einen HTTP-Handler, sodass GAE API-Aufrufe ausgeführt werden können
Funktionen
func APICall
APICall führt einen API-Aufruf aus.
Dies ist nicht für die allgemeine Verwendung vorgesehen. Es wird zur Verwendung in Verbindung mit WithAPICallFunc exportiert.
func AccessToken
AccessToken generiert ein OAuth2-Zugriffstoken für die angegebenen Bereiche im Auftrag des Dienstkontos dieser Anwendung. Dieses Token läuft nach der gemeldeten Zeit ab.
func AppID
AppID liefert die Anwendungs-ID für die aktuelle Anwendung. Der String ist eine einfache Anwendungs-ID (z. B. "appid") mit einem Domainpräfix für benutzerdefinierte Domainbereitstellungen (z. B. "example.com:appid").
func BackgroundContext (verworfen)
BackgroundContext gibt einen Kontext zurück, der nicht mit einer Anfrage verknüpft ist.
Verworfen: App Engine hat keinen speziellen Hintergrundkontext mehr. Verwenden Sie einfach context.Background().
func Datacenter
Datacenter liefert eine Kennung für das Rechenzentrum, in dem die Instanz ausgeführt wird.
func DefaultVersionHostname
DefaultVersionHostname liefert den Standardhostnamen der Standardversion der aktuellen Anwendung (z. B. "my-app.appspot.com"). Dieser eignet sich zum Erstellen von URLs.
func InstanceID
func InstanceID() string
InstanceID liefert eine vorwiegend eindeutige Kennung für diese Instanz.
func IsAppEngine
func IsAppEngine() bool
IsAppEngine meldet, ob die App Engine-Anwendung in App Engine ausgeführt wird, entweder in der Standardumgebung oder der flexiblen Umgebung.
func IsDevAppServer
func IsDevAppServer() bool
IsDevAppServer meldet, ob die App Engine-Anwendung auf dem Entwicklungs-Anwendungsserver ausgeführt wird.
func IsFlex
func IsFlex() bool
IsFlex meldet, ob die App Engine-Anwendung in der flexiblen Umgebung ausgeführt wird.
func IsOverQuota
IsOverQuota meldet, ob err einen API-Aufruffehler aufgrund von nicht ausreichend verfügbarem Kontingent darstellt.
func IsSecondGen
func IsSecondGen() bool
IsSecondaryGen meldet, ob die App Engine-Anwendung in den Laufzeiten der zweiten Generation ausgeführt wird (>= Go 1.11).
func IsStandard
func IsStandard() bool
IsStandard meldet, ob die App Engine-Anwendung in der Standardumgebung ausgeführt wird. Dies umfasst sowohl Laufzeiten der ersten Generation (<= Go 1.9) als auch die Laufzeiten der zweiten Generation (>= Go 1.11).
func IsTimeoutError
IsTimeoutError meldet, ob err ein Zeitüberschreitungsfehler ist.
func Main
func Main()
„Main“ ist der Haupteinstiegspunkt für eine Anwendung, die in App Engine ausgeführt wird.
In der flexiblen Umgebung von App Engine wird eine einfache Systemdiagnose installiert, falls noch keine registriert ist, und sie beginnt, den Port 8080 zu überwachen (überschrieben durch die Umgebungsvariable $PORT).
Weitere Informationen zur Durchführung einer eigenen Systemdiagnose finden Sie unter https://cloud.google.com/appengine/docs/flexible/custom-runtimes#health_check_requests.
In der App Engine-Standardumgebung wird sichergestellt, dass der Server gestartet wurde und bereit ist, Anfragen zu empfangen.
„Main“ gibt nie etwas zurück.
„Main“ ist so konzipiert, dass das Hauptpaket der Anwendung so aussieht:
package main
import (
"google.golang.org/appengine"
_ "myapp/package0"
_ "myapp/package1"
)
func main() {
appengine.Main()
}
Die Pakete „myapp/packageX“ registrieren HTTP-Handler in ihren Init-Funktionen.
func ModuleHostname
ModuleHostname liefert einen Hostnamen einer Modulinstanz. Wenn das Modul der leere String ist, bezieht er sich auf das Modul der aktuellen Instanz. Wenn die Version leer ist, bezieht er sich auf die Version der aktuellen Instanz, falls diese gültig ist, oder auf die Standardversion des Moduls der aktuellen Instanz. Wenn die Instanz leer ist, liefert ModuleHostname den Hostnamen für den Lastenausgleich.
func ModuleName
ModuleName liefert den Modulnamen der aktuellen Instanz.
func Namespace
Namespace liefert einen Ersetzungskontext, der innerhalb des angegebenen Namespace funktioniert.
func NewContext
NewContext liefert einen Kontext für einen derzeit ausgeführten HTTP-Request. Diese Funktion ist kostengünstig.
func RequestID
RequestID liefert einen String, der den Request eindeutig identifiziert.
func ServerSoftware
func ServerSoftware() string
ServerSoftware liefert die App Engine-Releaseversion. In der Produktion sieht sie aus wie "Google App Engine/X.Y.Z". Im Entwicklungs-Anwendungsserver sieht sie aus wie "Development/X.Y".
func ServiceAccount
ServiceAccount liefert einen String, der den Namen des Dienstkontos in Form einer E-Mail-Adresse darstellt (normalerweise app_id@appspot.gserviceaccount.com).
func SignBytes
SignBytes signiert Byte mit einem privaten Schlüssel, der für Ihre Anwendung einzigartig ist.
func VersionID
VersionID liefert die Versions-ID für die aktuelle Anwendung. Sie hat die Form "X.Y", wobei X in app.yaml angegeben ist und Y eine Zahl ist, die generiert wird, wenn die jeweilige Version der Anwendung hochgeladen wird. Sie enthält keinen Modulnamen.
func WithAPICallFunc
func WithAPICallFunc(ctx context.Context, f APICallFunc) context.Context
WithAPICallFunc gibt eine Kopie des übergeordneten Kontexts zurück, der dazu führt, dass API-Aufrufe „f“ anstelle des normalen Betriebs aufrufen.
Dies ist nur für fortgeschrittene Nutzer gedacht.
func WithContext
WithContext liefert eine Kopie des übergeordneten Kontexts und ordnet sie einem derzeit laufenden HTTP-Request zu. Diese Funktion ist kostengünstig.
APICallFunc
APICallFunc definiert einen Funktionstyp für die Verarbeitung eines API-Aufrufs. Siehe WithCallOverride.
BlobKey
type BlobKey string
BlobKey ist ein Schlüssel für ein Blobstore-Blob.
Konzeptuell gehört dieser Typ ins blobstore-Paket. Er befindet sich jedoch im appengine-Paket, um eine zirkuläre Abhängigkeit zu verhindern: Blobstore hängt vom Datenspeicher ab und der Datenspeicher muss auf den BlobKey-Typ verweisen.
Zertifikat
Das Zertifikat stellt ein öffentliches Zertifikat für die Anwendung dar.
func PublicCertificates
func PublicCertificates(c context.Context) ([]Certificate, error)
PublicCertificates ruft die öffentlichen Zertifikate für die Anwendung ab. Damit kann eine von SignBytes zurückgegebene Signatur geprüft werden.
GeoPoint
type GeoPoint struct {
Lat, Lng float64
}
GeoPoint stellt einen Standort in der Form Breitengrad/Längengrad in Grad dar.
func (GeoPoint) Valid
Valid gibt an, ob ein GeoPoint innerhalb von [-90, 90] Breitengrad und [-180, 180] Längengrad liegt.
MultiError
type MultiError []error
MultiError wird von Batchvorgängen zurückgegeben, wenn Fehler bei bestimmten Elementen vorliegen. Fehler stehen in einer 1:1-Beziehung zu den Eingabeelementen; erfolgreiche Elemente haben einen Nulleintrag.
func (MultiError) Error
func (m MultiError) Error() string