Я хотел бы отменить запрос cURL. Запрос должен быть отменен, когда пользователь покидает страницу.
Объяснение ситуации: мы отправляем запрос cURL на мобильный платежный терминал, чтобы начать новый платеж. Запрос все еще находится на рассмотрении, так как мы ожидаем, что клиент введет пин-код. Когда пин-код введен, на запрос будет дан ответ с успехом / неудачей. Мы хотели бы отменить запрос от сервера к платежному терминалу, когда, например, клиент хочет заплатить наличными.
Мы пробовали разные подходы, например, connection_aborted
& ignore_user_abort
, но ничего не исправит работу.
$dataString = json_encode($data);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $dataString);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen($dataString)
));
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_SSLCERT, certificateRoot.'/test.crt.pem');
curl_setopt($ch, CURLOPT_SSLKEY, certificateRoot.'/test.key.pem');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result = curl_exec($ch);