メソッドオーバーライド
Method Override ミドルウェアは、リクエストから上書きされたメソッドを読み取り、 元のメソッドの代わりに使います。
すべてのコアミドルウェアは middleware パッケージに含まれています:
import "github.com/labstack/echo/v5/middleware"e.Pre(middleware.MethodOverride())カスタム設定
Section titled “カスタム設定”e := echo.New()e.Pre(middleware.MethodOverrideWithConfig(middleware.MethodOverrideConfig{ Getter: middleware.MethodFromForm("_method"),}))メソッドは MethodFromHeader、MethodFromForm、MethodFromQuery から取得できます。
MethodOverrideConfig · github.com/labstack/echo/v5@5196b9b
フィールドの説明は英語のソースコードのコメントから生成されています。
デフォルト設定
Section titled “デフォルト設定”DefaultMethodOverrideConfig = MethodOverrideConfig{ Skipper: DefaultSkipper, Getter: MethodFromHeader(echo.HeaderXHTTPMethodOverride),}Echo のセキュリティ更新 (v5.4.0 / v4.16.0)
Section titled “Echo のセキュリティ更新 (v5.4.0 / v4.16.0)”MethodOverride はルーティングと CSRF ミドルウェアより前に Echo#Pre で登録してください。POST を GET、HEAD、OPTIONS、TRACE、CONNECT に変更することはできません。これらが指定された場合、リクエストは POST のままです。