1
0
mirror of https://github.com/labstack/echo.git synced 2024-12-24 20:14:31 +02:00
echo/website/content/middleware/method-override.md
Vishal Rana f4b0004d2b website/recipe in the main repo
Signed-off-by: Vishal Rana <vr@labstack.com>
2016-10-20 09:11:07 -07:00

1.1 KiB

+++ title = "MethodOverride Middleware" description = "Method override middleware for Echo" [menu.side] name = "MethodOverride" parent = "middleware" weight = 5 +++

MethodOverride Middleware

MethodOverride middleware checks for the overridden method from the request and uses it instead of the original method.

For security reasons, only POST method can be overridden.

Usage

e.Pre(middleware.MethodOverride())

Custom Configuration

Usage

e := echo.New()
e.Pre(middleware.MethodOverrideWithConfig(middleware.MethodOverrideConfig{
  Getter: middleware.MethodFromForm("_method"),
}))

Configuration

MethodOverrideConfig struct {
  // Skipper defines a function to skip middleware.
  Skipper Skipper

  // Getter is a function that gets overridden method from the request.
  // Optional. Default values MethodFromHeader(echo.HeaderXHTTPMethodOverride).
  Getter MethodOverrideGetter
}

Default Configuration

DefaultMethodOverrideConfig = MethodOverrideConfig{
  Skipper: defaultSkipper,
  Getter:  MethodFromHeader(echo.HeaderXHTTPMethodOverride),
}