'WebApiUser', 'Password' => 'webapiuser01' ]; // Inizializza cURL $ch = curl_init($api_url); // Configura le opzioni di cURL curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($credentials)); curl_setopt($ch, CURLOPT_HTTPHEADER, [ 'Content-Type: application/json', 'Accept: application/json' ]); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); // Solo per test curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); // Solo per test curl_setopt($ch, CURLOPT_VERBOSE, true); $log = fopen('curl_auth_debug.log', 'w'); curl_setopt($ch, CURLOPT_STDERR, $log); // Esegui la richiesta $response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); $curl_error = curl_error($ch); fclose($log); // Verifica errori if ($response === false || $http_code != 200) { http_response_code($http_code ? $http_code : 500); echo json_encode([ 'error' => 'Errore nella richiesta API', 'http_code' => $http_code, 'curl_error' => $curl_error, 'response' => substr($response, 0, 1000) ]); } else { $decoded = json_decode($response); if (json_last_error() === JSON_ERROR_NONE) { http_response_code($http_code); echo $response; } else { http_response_code(500); echo json_encode([ 'error' => 'Risposta non JSON valida', 'http_code' => $http_code, 'response' => substr($response, 0, 1000) ]); } } curl_close($ch);