コンテンツにスキップ

ボディ制限

Body Limit ミドルウェアはリクエストボディに許可される最大サイズを設定します。 サイズが設定値を超えた場合、413 Request Entity Too Large レスポンスを送信します。

この制限は Content-Length リクエスト header と実際に読み取られた内容の両方に適用されるため、 偽装された header に対しても耐性があります。制限値はバイト単位で指定します。

すべてのコアミドルウェアは middleware パッケージに含まれています:

import "github.com/labstack/echo/v5/middleware"
e := echo.New()
e.Use(middleware.BodyLimit(2_097_152)) // 2 MB
e := echo.New()
e.Use(middleware.BodyLimitWithConfig(middleware.BodyLimitConfig{}))

BodyLimitConfig · github.com/labstack/echo/v5@5196b9b

フィールドの説明は英語のソースコードのコメントから生成されています。

パッケージのソースコードのフィールド
フィールド型説明ソース
Skipper Skipper Skipper defines a function to skip middleware. L17
LimitBytes int64 LimitBytes is maximum allowed size in bytes for a request body L20
パッケージのソースコードの関数
型ソース
func BodyLimit(limitBytes int64) echo.MiddlewareFunc L34
func BodyLimitWithConfig(config BodyLimitConfig) echo.MiddlewareFunc L42
// Effective defaults applied when fields are left unset (Limit is required).
BodyLimitConfig{
Skipper: DefaultSkipper,
}