google.golang.org/appengine 패키지(v1.6.8)

패키지 appengine은 Google App Engine을 위한 기본적인 기능을 제공합니다.

Google App Engine용 Go 앱을 만드는 방법은 https://cloud.google.com/appengine/docs/go/를 참조하세요.

변수

미들웨어

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

미들웨어는 GAE API 호출을 수행할 수 있도록 http 핸들러를 래핑합니다.

함수

func APICall

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

APICall은 API 호출을 수행합니다.

이는 일반적인 용도가 아닙니다. WithAPICallFunc와 함께 사용하도록 내보낸 것입니다.

func AccessToken

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

AccessToken은 OAuth2 이 애플리케이션의 서비스 계정을 대신하여 지정된 범위의 액세스 토큰을 생성합니다. 이 토큰은 반환된 시간 이후 만료됩니다.

func AppID

func AppID(c context.Context) string

AppID는 현재 애플리케이션의 애플리케이션 ID를 반환합니다. 문자열은 일반 애플리케이션 ID(예: 'appid')이며, 커스텀 도메인 배포의 경우 도메인 프리픽스가 있습니다(예: 'example.com:appid').

func BackgroundContext(지원 중단됨)

func BackgroundContext() context.Context

BackgroundContext는 요청과 연관되지 않은 컨텍스트를 반환합니다.

지원 중단됨: App Engine에 더 이상 특별한 백그라운드 컨텍스트가 없습니다. context.Background()를 사용합니다.

func Datacenter

func Datacenter(c context.Context) string

Datacenter는 인스턴스가 실행 중인 데이터 센터의 식별자를 반환합니다.

func DefaultVersionHostname

func DefaultVersionHostname(c context.Context) string

DefaultVersionHostname은 현재 애플리케이션의 기본 버전의 표준 호스트 이름을 반환합니다(예: 'my-app.appspot.com'). URL 작성에 사용하기에 적합합니다.

func InstanceID

func InstanceID() string

InstanceID는 이 인스턴스의 대체로 고유한 식별자를 반환합니다.

func IsAppEngine

func IsAppEngine() bool

IsAppEngine은 App Engine 앱이 App Engine에서 표준 또는 가변형 환경으로 실행되는지를 보고합니다.

func IsDevAppServer

func IsDevAppServer() bool

IsDevAppServer는 App Engine 앱이 개발 앱 서버에서 실행 중인지 여부를 보고합니다.

func IsFlex

func IsFlex() bool

IsFlex는 App Engine 앱이 가변형 환경에서 실행되는지 여부를 보고합니다.

func IsOverQuota

func IsOverQuota(err error) bool

IsOverQuota는 err이 사용 가능한 할당량 부족으로 인한 API 호출 실패를 나타내는지 여부를 보고합니다.

func IsSecondGen

func IsSecondGen() bool

IsSecondGen은 App Engine 앱이 2세대 런타임(>= Go 1.11)에서 실행되는지 여부를 보고합니다.

func IsStandard

func IsStandard() bool

IsStandard는 App Engine 앱이 표준 환경에서 실행되는지 여부를 보고합니다. 여기에는 1세대 런타임(<= Go 1.9) 및 2세대 런타임(>= Go 1.11)이 포함됩니다.

func IsTimeoutError

func IsTimeoutError(err error) bool

IsTimeoutError는 err이 시간 초과 오류인지 여부를 보고합니다.

func Main

func Main()

Main은 App Engine에서 실행되는 앱의 주요 진입점입니다.

App Engine 가변형에서는 아직 등록된 항목이 없으면 간단한 상태 점검기를 설치하고 포트 8080($PORT 환경 변수로 재정의됨)에서 리슨을 시작합니다.

자체 상태 점검을 수행하는 자세한 방법은 https://cloud.google.com/appengine/docs/flexible/custom-runtimes#health_check_requests를 참조하세요.

App Engine 표준에서는 서버가 시작되었고 요청을 수신할 준비가 되었는지 확인합니다.

Main은 결과를 반환하지 않습니다.

Main은 다음과 같이 앱의 기본 패키지가 표시되도록 설계됩니다.

package main

import (
        "google.golang.org/appengine"

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

func main() {
        appengine.Main()
}

'myapp/packageX' 패키지는 자신의 init 함수에 HTTP 핸들러를 등록합니다.

func ModuleHostname

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

ModuleHostname은 모듈 인스턴스의 호스트 이름을 참조합니다. 모듈이 빈 문자열인 경우 현재 인스턴스의 모듈을 가리킵니다. 버전이 비어 있으면 현재 인스턴스의 버전(유효한 경우) 또는 현재 인스턴스의 모듈의 기본 버전을 참조합니다. 인스턴스가 비어 있으면 ModuleHostname은 부하 분산 호스트 이름을 반환합니다.

func ModuleName

func ModuleName(c context.Context) string

ModuleName은 현재 인스턴스의 모듈 이름을 반환합니다.

func Namespace

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

Namespace는 지정된 네임스페이스 내에서 작동하는 대체 컨텍스트를 반환합니다.

func NewContext

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

NewContext는 이동 중인 HTTP 요청의 컨텍스트를 반환합니다. 이 함수는 리소스 사용량이 적습니다.

func RequestID

func RequestID(c context.Context) string

RequestID는 요청을 고유하게 식별하는 문자열을 반환합니다.

func ServerSoftware

func ServerSoftware() string

ServerSoftware는 App Engine 출시 버전을 반환합니다. 프로덕션에서는 'Google App Engine/X.Y.Z'와 같은 형태입니다. 개발 앱 서버에서는 'Development/X.Y'와 같은 형태입니다.

func ServiceAccount

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

ServiceAccount는 서비스 계정 이름을 나타내는 문자열을 이메일 주소 형식으로 반환합니다(일반적으로 app_id@appspot.gserviceaccount.com).

func SignBytes

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

SignBytes는 애플리케이션에 고유한 비공개 키를 사용하여 바이트에 서명합니다.

func VersionID

func VersionID(c context.Context) string

VersionID는 현재 애플리케이션의 버전 ID를 반환합니다. 형식은 'X.Y'입니다. X는 app.yaml에 지정되며, Y는 앱의 각 버전이 업로드될 때 생성되는 번호입니다. 모듈 이름은 포함되지 않습니다.

func WithAPICallFunc

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

WithAPICallFunc는 API 호출로 정상 작업 대신 f가 호출되도록 만드는 상위 컨텍스트의 복사본을 반환합니다.

고급 사용자 전용입니다.

func WithContext

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

WithContext는 상위 컨텍스트의 복사본을 반환하고 이를 이동 중인 HTTP 요청과 연결합니다. 이 함수는 리소스 사용량이 적습니다.

APICallFunc

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

APICallFunc는 API 호출 처리를 위한 함수 유형을 정의합니다. WithCallOverride를 참조하세요.

BlobKey

type BlobKey string

BlobKey는 blobstore blob의 키입니다.

이 유형은 개념적으로는 blobstore 패키지에 속하지만 순환 종속성을 방지하기 위해(blobstore는 datastore에 종속되며 datastore는 BlobKey 유형을 참조해야 함) appengine 패키지에 상주합니다.

인증서

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

Certificate는 앱의 공개 인증서를 나타냅니다.

func PublicCertificates

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

PublicCertificates는 앱의 공개 인증서를 검색합니다. SignBytes에서 반환된 서명을 확인하는 데 사용할 수 있습니다.

GeoPoint

type GeoPoint struct {
	Lat, Lng float64
}

GeoPoint는 위치의 위도나 경도를 나타냅니다.

func (GeoPoint) Valid

func (g GeoPoint) Valid() bool

Valid는 GeoPoint가 위도 [-90, 90] 및 경도 [-180, 180] 내에 있는지 여부를 반환합니다.

MultiError

type MultiError []error

MultiError는 일괄 작업에서 특정 요소에 오류가 있는 경우 반환됩니다. 오류는 입력 요소와 일대일로 대응합니다. 성공적인 요소에는 nil 항목이 있습니다.

func (MultiError) Error

func (m MultiError) Error() string