我有一个XML文件,我可以自动生成并每天上传。我希望采用该XML并自动更新/关闭Volusion中的订单并添加跟踪号...
我有API凭证,加密的PW等等,我有这个XML,但我错过了实际进行导入的中间部分。并希望在规定的时间间隔(如每日)
(我试图避免每天通过网络管理员手动上传.csv)
我的XML看起来像:
有没有人有一个用PHP / CURL导入内容的例子? (我在另一台服务器上有PHP访问权限)
答案 0 :(得分:2)
来自http://helpcenter.volusion.com/developers/get-building/order-management-trackingnumbers-developer
示例XML请求数据
<?xml version="1.0" encoding="utf-8" ?>
<xmldata>
<TrackingNumbers>
<gateway>UPS</gateway>
<MarkOrderShipped>true</MarkOrderShipped>
<OrderID>XXXX</OrderID>
<SendShippedEmail>false</SendShippedEmail>
<Shipment_Cost>0</Shipment_Cost>
<ShippingMethodID>141</ShippingMethodID>
<TrackingNumber>XXXXXXXXXXXXX</TrackingNumber>
</TrackingNumbers>
</xmldata>
发表强>
POST http://yourdomain.com/net/WebService.aspx?Login=you@yourdomain.com&EncryptedPassword=YOURPASS&Import=Insert-Update
答案 1 :(得分:1)
我们在Godaddy有一个便宜的5美元/月服务器作为&#34;中间人&#34;对于这些类型的操作。
如果您可以访问Linux服务器,那么它可以很好地工作,但不是必需的。
我们定期使用Linux中的cron作业并通过PHP和MySQL执行cURL来为十几个不同的函数调用API。您可以使用您喜欢的任何脚本语言来完成此任务!
我们还在办公室的Microsoft服务器上运行了一些与Volusion通信的不同软件产品。
您可以创建服务器端ASP页面,但功能有限。
这是PHP中的一个基本示例:
$url = 'http://www.yoursite.com/net/WebService.aspx?Login=USERNAME&EncryptedPassword=PASSWORD&Import=Update';
$xml = 'YOUR COMPLETE XML';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, $xml);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type:application/x-www-form-urlencoded; charset=utf-8", "Content-Action:Volusion_API"));
$head = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);