Возможно, проблема в том, что вы объявляете $ post массивом с номером, который, вероятно, содержит ключи массива, которые вы отображаете. По сути, это то, что вы ему даете:
Array(
1 => Array(
'authentication' => 'some data here'
),
2 => Array(
'client' => 'some more data here'
)
)
На самом деле вы должны создать переменную $ post следующим образом:
Array(
'authentication' => 'some data here',
'client' => 'some more data here'
)
Попробуйте изменить код на что-то вроде этого (не оптимально, но должно выполнить работу):
$authentication = $authentication->toJson();
$client = $client->toJson();
$post = array_merge($authentication, $client);
$resp = curl_post("http://localhost:8080/login", array(),
array(CURLOPT_HTTPHEADER => array('Content-Type: application/json'),
CURLOPT_POSTFIELDS => $post));