+++ title = “方法重写” url = “/middleware/method-override” [menu.side] name = “方法重写” parent = “middleware” weight = 12

+++

Method Override (方法重写) 中间件

Method Override 中间件检查从请求中重写的方法,并使用它来代替原来的方法。

出于安全原因,只有 POST 方法可以被重写。

用法

  1. e.Pre(middleware.MethodOverride())

自定义配置

用法

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

配置

  1. MethodOverrideConfig struct {
  2. // Skipper defines a function to skip middleware.
  3. Skipper Skipper
  4. // Getter is a function that gets overridden method from the request.
  5. // Optional. Default values MethodFromHeader(echo.HeaderXHTTPMethodOverride).
  6. Getter MethodOverrideGetter
  7. }

默认配置

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