0

我有一个可以每天自动生成和上传的 XML 文件。我希望采用该 XML 并自动更新/关闭 Volusion 中的订单并添加跟踪号...

我有 API 凭据、加密的 PW 等,我有这个 XML,但我缺少实际执行导入的中间部分。并希望在规定的时间间隔内(如每天)

(我试图避免每天通过网络管理员手动上传 .csv)

我的 XML 看起来像:

在此处输入图像描述

有没有人有一个用 PHP/CURL 导入东西的例子?(我在另一台服务器上有 PHP 访问权限)

4

2 回答 2

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
于 2016-03-31T16:51:09.873 回答
1

我们在 Godaddy 有一台 5 美元/月的廉价服务器作为此类操作的“中间人”。

它工作得很好,尽管如果您可以访问 Linux 服务器,但没有必要,如您所说。

我们定期为十几个不同的函数调用 API,在 Linux 中使用 cron 作业并通过 PHP 和 MySQL 执行 cURL。您可以使用您喜欢的任何脚本语言来完成此操作!

我们还在办公室的 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);
于 2016-03-29T23:23:47.930 回答