Yeah, I can't find anything that explicitly forbids POST or PUT
without a body (although at least for PUT the way it talks about "the
enclosed resource" only really makes sense if there is such a
resource. In any case, even if it's not technically required,
body-less POST and PUT is usually an error (likewise, GET with a body
is not prohibited, but is more likely to be a mistake than
intentional). This and other sanity checks are controlled by the
(poorly-named) allow_nonstandard_methods option. Pass
allow_nonstandard_methods=True in your request and simple_httpclient
will allow the request even it doesn't look quite right.
-Ben