resgateio/resgate

HTTP method mapping

Closed this issue · 1 comments

Issue

For HTTP requests, it should be possible to map certain HTTP methods to a corresponding call method.

The methods that should be allowed for mapping are:

  • PUT
  • DELETE
  • PATCH

Configuration

The mapping should be available through flags:

--putmethod=put --deletemethod=delete --patchmethod=patch

or through configuration (value may be null):

{
    "putMethod": "put",
    "deleteMethod": "delete",
    "patchMethod": "patch"
}

Default is no mapping.

Consideration

  • the responsibility for behavior, such as idempotency, lies on the service implementing the corresponding method.
  • a mapped call that returns a system.methodNotFound error will be converted to a 405 Method Not Allowed HTTP response.
  • All resources will be affected by method mapping.

Resolved in #152