Думаю, тут проблема в том, что ты переводишь в urlencoded весь json {“auth_user”: user, “auth_pwd”: password, “json_data”: {…}}
, а надо переводить только значение json_data
. В твоем случае тело получается:
%7B%22auth_user%22%3A%22admin%22%2C%22auth_pwd%22%3A%22password%22%2C%22json_data%22%3A%7B%22param%22%3A%22val%22%7D%7D
А должно быть:
auth_user=admin&auth_pwd=password&json_data=%7B%22param%22%3A%22val%22%7D