3 HTTP_METHODS
= %w(GET HEAD PUT POST DELETE OPTIONS
)
5 METHOD_OVERRIDE_PARAM_KEY
= "_method".freeze
6 HTTP_METHOD_OVERRIDE_HEADER
= "HTTP_X_HTTP_METHOD_OVERRIDE".freeze
13 if env["REQUEST_METHOD"] == "POST"
14 req
= Request
.new(env)
15 method
= req
.POST
[METHOD_OVERRIDE_PARAM_KEY
] ||
16 env[HTTP_METHOD_OVERRIDE_HEADER
]
17 method
= method
.to_s
.upcase
18 if HTTP_METHODS
.include?(method
)
19 env["rack.methodoverride.original_method"] = env["REQUEST_METHOD"]
20 env["REQUEST_METHOD"] = method