Curl двойная подача при попытке эха - PullRequest
1 голос
/ 27 апреля 2020

В настоящее время приведенный ниже код вызывает повторную отправку JSON POST по URL-адресу, создающему дубликаты записей на стороне сервера. У меня есть подозрения, что это может быть, как я пытаюсь отобразить результаты.

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => "API-URL",
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => "",
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => "POST",
  CURLOPT_POSTFIELDS => $final_JSON,
  CURLOPT_HTTPHEADER => array(
    "Content-Type: application/json",
    "Content-Type: application/json"
  ),
));

$response2 = curl_exec($curl);

curl_close($curl);
$get_results = json_decode($response2);

echo $get_results->ResultString;
if($get_results->HTMLResponsePage != ""){
echo $get_results->HTMLResponsePage;
}

JSON POST отправляет ответ обратно в формате

{"AuthCode":null,"HTMLResponsePage":null,"OrderID":0,"PaymentType":0,"PaypalURL":null,"Result":-6,"ResultString":"Required Date\/Time is in the Past. Select a Future Time.","ThreeDSecureURL":null,"TransactionID":null}

Мне нужно просто повторить секция "HTMLResponsePage", в настоящее время пытающаяся $get_results->HTMLResponsePage;, не дает правильного результата.

РЕДАКТИРОВАТЬ - попытка echo $response2- >HTMLResponsePage; Также не дает правильного результата!

ОБНОВЛЕНИЕ - кажется нормально работать через гугл chrome! Я попытался подделать пользовательский агент, и он по-прежнему не запускается один раз через safari!

ОБНОВЛЕНИЕ - Опробовал большинство доступных пользовательских агентов. Я задаюсь вопросом, должен ли я найти другой способ отправки JSON POST.

ОБНОВЛЕНИЕ - Попробовал различные другие методы, но все еще не повезло, получая одну отправку, а не дубликат. Есть предложения?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...