Я безуспешно пытался использовать Volusion API для импорта данных заказа, а поддержка через Volusion ограничена. Я склоняюсь к решению PHP, и на их веб-сайте есть этот пример использования API для импорта с php ...
<?php
// Create the Xml to POST to the Webservice
$Xml_to_Send = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>";
$Xml_to_Send .= "<Volusion_API>";
$Xml_to_Send .= "<!--";
$Xml_to_Send .= " xml input file for \"\"";
$Xml_to_Send .= "-->";
$Xml_to_Send .= "</Volusion_API>";
// Create the Header
$url = "https://www.xxxxxcomusa.com/net/[email protected] &EncryptedPassword=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx&Import=Insert";
$header = "POST".$url." HTTP/1.0 \r\n";
$header .= "MIME-Version: 1.0 \r\n";
$header .= "Content-type: text/xml; charset=utf-8 \r\n";
$header .= "Content-length: ".strlen($post_string)." \r\n";
$header .= "Content-transfer-encoding: text \r\n";
$header .= "Request-number: 1 \r\n";
$header .= "Document-type: Request \r\n";
$header .= "Interface-Version: Test 1.4 \r\n";
$header .= "Connection: close \r\n\r\n";
$header .= $Xml_to_Send;
// Post and Return Xml
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 4);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $header);
$data = curl_exec($ch);
// Check for Errors
if (curl_errno($ch)){
print curl_error($ch);
} else {
curl_close($ch);
}
// Display the Xml Returned on the Browser
echo $data;
?>
Я отредактировал это соответствующим образом, чтобы обновить порядок (использовал «Import = Update»), но на результирующей странице нет вывода «данных», и запись не обновляется. Я могу получать данные, возвращаемые из api, используя аналогичный URL-адрес, поэтому я знаю, что мой зашифрованный пароль правильный. Думаю, я также определил, что строка, которая гласит ...
$header = "POST".$url." HTTP/1.0 \r\n";
должен прочесть ...
$header = "POST ".$url." HTTP/1.0 \r\n";
с пробелом после POST, но я все еще не могу успешно обновить запись. Я надеялся, что кто-то, возможно, добился успеха и поделится более подробной информацией о том, как вы смогли импортировать обновление с помощью Volusion API (и, надеюсь, PHP).