У меня есть запрос XMLHttpRequest, который возвращает через API стоимость доставки.
Я активировал запрос по нажатию кнопки.Когда я запрашиваю другую цитату, ответ «print» совпадает с первым запросом, но в консоли я вижу разные данные.
Почему я не вижу правильный ответ?Как мне всегда печатать только обновленный запрос?
$ ("#checkers") .click (function () {
var myKey = "xxxxx";
var name = $('#Inputfield_pad_firstname').val();
var company = $('#Inputfield_company_name').val();
var street1 = $('#Inputfield_pad_address').val();
var xhttp = new XMLHttpRequest();
xhttp.onreadystatechange = function() {
if (this.readyState == 1) {
$('#wrap_Inputfield_shipping_choose').css("opacity",".4");
$('#Inputfield_shipping_choose_1').nextAll().remove();
$('#Inputfield_shipping_choose_2').nextAll().remove();
}
if (this.readyState == 4) {
console.log( this.response );
$('#wrap_Inputfield_shipping_choose').css("opacity","1");
$('#Inputfield_shipping_choose_1').after("<p>JS<b><?= $rate['Rates'][0]['carrier_label'] ?></b> costo: <?= $rate['Rates'][0]['rate'] ?> Tempo<?= $rate['Rates'][0]['delivery_days'] ?></p>");
$('#Inputfield_shipping_choose_2').after("<p>JS<b><?= $rate['Rates'][1]['carrier_label'] ?></b> costo: <?= $rate['Rates'][1]['rate'] ?> Tempo<?= $rate['Rates'][1]['delivery_days'] ?></p>");
}
};
xhttp.responseType = 'json';
xhttp.open("POST", 'https://www.xxxxx.it/form/getRates.php', true);
xhttp.send(JSON.stringify({
'Method' : 'GetRates',
'Params' : {
.... data ...
}
})
);
PHP part:
header('Access-Control-Allow-Origin: *');
$raw = file_get_contents('php://input');
$connection = curl_init();
curl_setopt($connection, CURLOPT_URL, 'https://www.xxxx.com/api');
curl_setopt($connection, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($connection, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($connection, CURLOPT_HTTPHEADER, array(
"Content-Type: application/json",
"Authorization: xxxxx",
"password:"
));
curl_setopt($connection, CURLOPT_REFERER, $_SERVER["HTTP_REFERER"]);
curl_setopt($connection, CURLOPT_POST, 1);
curl_setopt($connection, CURLOPT_POSTFIELDS, $raw );
curl_setopt($connection, CURLOPT_RETURNTRANSFER, 1);
echo curl_exec($connection);
curl_close($connection);