Пытаю отправить XML POST запросом по API в CDEK выдает ошибку: 400 Bad Request, служба поддержки помочь не захотела, сказали только что xml составлен правильно`
$account = '2JewP7QZLWR******IIbKAw2';
$secure = md5('2019-04-08T09:29:57' . '&' . 'ZovLT8zVXjUg*****JinAc');
$request = <<<XML
<?xml version="1.0" encoding="UTF-8" ?>
<DeliveryRequest
Number="0000033876WO"
Date="2019-04-08T09:29:57"
Account="$account"
Secure="$secure"
OrderCount="1">
<Order Number="12345" SendCityPostCode="350000" RecCityPostCode="350000" RecipientName="Герусов Александр Валерьевич" RecipientEmail="gerusov14@mail.ru" Phone="89615096005" TariffTypeCode="136" DeliveryRecipientCost="137" DeliveryRecipientVATRate="VATX" DeliveryRecipientVATSum="0" SellerName="ИП Волженин Е.Г." SellerAddress="Ленинградская обл, Всеволожский р-н, Пос. Лесное, дом № 18, кв.6">
<Address PvzCode="KSD5"/>
<Package Number="1" BarCode="krd61927-1" Weight="1000">
<Item WareKey="158308" Cost="790" Payment="790" PaymentVATRate="VATX" PaymentVATSum="0" Weight="1000" Amount="1" Comment="Кронштейн для телевизора Ultramounts UM 814F черный"/>
</Package>
</Order>
</DeliveryRequest>
XML;
$host_api = 'https://integration.cdek.ru/new_orders.php';
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $host_api);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER,
array('Content-Type: application/x-www-form-urlencoded',
'Content-Length: '. strlen($request)));
curl_setopt($curl, CURLOPT_POST, 1);
'xml_request' => urlencode($request)
]);
curl_setopt($curl, CURLINFO_HEADER_OUT, true);
$response = curl_exec($curl);
if ($response === false) {
echo "cURL Error: " . curl_error($curl);
}
$sent_headers = curl_getinfo($curl, CURLINFO_HEADER_OUT);
curl_close($curl);
echo "<pre>";
print_r($response);
echo "</pre>";
`
Я не специалист по этому вопросу и так же "методом тыка" пытаюсь настроить работу с этим API. Одно я могу точно сказать - так делать не обязательно:
$secure = md5('2019-04-08T09:29:57' . '&' . 'ZovLT8zVXjUg*****JinAc');
В инструкции написано следующее:
В случае, когда вы передаете запрос на https, в качестве Secure можно использовать Secure password." Т.е. secure = md5(date.'&'. secure password) - не нужна.
В Вашем случае:
$secure = 'ZovLT8zVXjUg*****JinAc';
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть массив целыхЗадача:
Столкнулся с такой проблемой: Если пользователь находится на странице, у которой есть параметр GET, как напримерphp?article=51 и хочет авторизоваться...
Пытаюсь написать регистрацию и авторизацию на сайте с помощью API фейсбукаНеобходимые данные от FB приходят, после я их заношу в БД и устанавливаю...