emptygif
言語: 日本語

すべての言語・フレームワーク

AWS Lambda (Go) Go

/pixel.gif へのリクエストに空の GIF を返す、AWS Lambda (Go) 用の Go スニペット。GIF は起動時に一度だけデコードします。

AWS Lambda (Go) Go

インストール
go get github.com/aws/aws-lambda-go
ファイル
main.go
// Behind an API Gateway HTTP API route "GET /pixel.gif" (payload format 2.0) or a function URL.
package main

import (
	"context"

	"github.com/aws/aws-lambda-go/events"
	"github.com/aws/aws-lambda-go/lambda"
)

// Binary bodies travel base64-encoded, so the GIF stays in base64 here.
const gifBase64 = "R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=="

func handler(ctx context.Context, req events.APIGatewayV2HTTPRequest) (events.APIGatewayV2HTTPResponse, error) {
	return events.APIGatewayV2HTTPResponse{
		StatusCode:      200,
		Headers:         map[string]string{"Content-Type": "image/gif", "Cache-Control": "no-store"},
		Body:            gifBase64,
		IsBase64Encoded: true,
	}, nil
}

func main() {
	lambda.Start(handler)
}

このスニペットは実行し、返されたバイト列を照合しました。

確認

curl -sI http://localhost:8080/pixel.gif

公式サイト: AWS Lambda (Go)

Go の他の例