Since the data you are POSTing is to be interpreted as application/x-www-form-urlencoded
, then it must have the form:
name1=value1&name2=value2&...
Therefore, the "value" parts MUST be URL-encoded, otherwise they will not be interpreted correctly.
Using POST with x-www-form-urlencoded
is just moving the query-string part of the URL out of the request and into the body.