【问题标题】:How to Add/Import/Insert new products to Volusion using Volusion API in PHP with cURL如何在 PHP 中使用带有 cURL 的 Volusion API 添加/导入/插入新产品到 Volusion
【发布时间】:2017-02-11 21:52:48
【问题描述】:

您能否帮助我了解如何使用 PHP 中的 Volusion API 和 cURL 之类的东西向 Volusion 添加新产品?

任何有用的链接将不胜感激。

【问题讨论】:

  • 你在使用 api 吗?
  • 我现在没有使用,但在 volusion 网站上似乎他们有一个用于此的 api。但是没有足够的信息来实施
  • 你的问题解决了吗?
  • 还没有,如果你有好的解决方案请分享:)

标签: php xml api curl volusion


【解决方案1】:
  1. 将 XML 文件制作成这样的格式,名称为“myXML.txt”。

<Import>
   <Products>
      <ProductID>360</ProductID>
      <productcode>10035</productcode>
      <vendor_partno>035</vendor_partno>
      <productname>Asus Video Card ATI Doulat</productname>
      <listprice>6.95</listprice>
      <productprice>2</productprice>
      <vendor_price>3.83</vendor_price>
      <stockstatus>100</stockstatus>
      <upc_code>99999</upc_code>
      <categoryids>107,134</categoryids>
      <productdescriptionshort />
      <productdescription />
      <productweight>0.00</productweight>
      <freeshippingitem />
      <minqty />
      <maxqty />
   </Products>
</Import>
  1. 然后将其复制并粘贴到您的编辑器中

<?php

    $file = file_get_contents('myXML.txt', true);

//  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 .= $file;
//  $Xml_to_Send .= "\"\"";
//  $Xml_to_Send .= "-->";
    $Xml_to_Send .= "</Volusion_API>";

    $url = "https://www.xxxxxusa.com/net/WebService.aspx?Login=xxxx@xxxxxxxcom.com&EncryptedPassword=0000000000000000000000000000xxxxxxxxxx&Import=Update";

//  Create the Header   

    $header  = array(
    "MIME-Version: 1.0",
    "Content-type: text/xml; charset=utf-8",
    "Content-transfer-encoding: text",
    "Request-number: 1",
    "Document-type: Request",
    "Interface-Version: Test 1.4"
);

    //  Post and Return Xml
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL,$url);
    curl_setopt($ch, CURLOPT_POST, true);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $Xml_to_Send); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, $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;
?>

请记住,请使用您自己的 API 凭据。试试这个希望你得到答案。

【讨论】:

  • 感谢您的关注我一定会试试这个:)
  • 我收到以下错误 False 您的 XML 文件中的以下一个或多个元素无效:导入。最可能的原因是您嵌入了 HTML 标记或无效字符(例如 & 号),并且没有将元素包含在 CDATA 标记中。有关详细信息,请参阅任何 XML 参考。 1 即使在 xml 中我们也没有任何 '&' 符号
  • 您可以在评论中发布您的错误吗?你只是发布我会更正它以供将来帮助。
  • 我已经解决了这个错误。上面发布了使用 CDATA 和删除 Volusion_API 关键字并在 xml 数据中进行了一些重构,谢谢。
  • 你能分享你的 XML
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-03-16
  • 1970-01-01
  • 2017-04-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多