Saya mencoba membuat permintaan menggunakan php dan curl. Inilah contoh kerja yang saya gunakan dari baris perintah
curl -k --cacert c:/cert/server_ca.pem --cert c:/cert/signed_client_cert.pem --key c:/cert/cert_req_rsa_private_key.pem
inilah yang saya miliki sejauh ini, Ini mengembalikan 400 permintaan buruk, adakah yang tahu bagaimana saya bisa mendapatkan kesalahan yang lebih berguna atau kesalahan apa yang saya lakukan?
ini_set('display_errors',1);
//phpinfo();
$cert = "C:/cert/signed_client_cert.pem";
$key = "C:/cert/cert_req_rsa_private_key.pem";
$pass = "key1123";
$caInfo = "C:/cert/server_ca.pem";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api.apitest.com/v/2/products/04003274058");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/xml'));
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_CAINFO, $caInfo);
curl_setopt($ch, CURLOPT_SSLCERT, $cert);
curl_setopt($ch, CURLOPT_SSLKEY, $key);
curl_setopt($ch, CURLOPT_VERBOSE, true);
//curl_setopt($ch, CURLOPT_SSLCERTPASSWD, $pass);
//curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'PEM');
//curl_setopt($ch, CURLOPT_SSLKEYPASSWD, $pass);
//curl_setopt($ch, CURLOPT_SSLKEYTYPE, 'PEM');
$response = curl_exec($ch);
echo curl_error($ch);
echo var_dump($response);