如何使用Volusion API在Volusion中创建新类别

时间:2016-11-28 12:44:37

标签: php xml api curl volusion

实际上我有一个商店并从我的供应商商店到我的商店导入产品和类别,产品已成功插入和更新,但未插入和更新类别。

我想通过API创建/添加新类别。

我的category.txt文件。

<?xml version="1.0"?>
<Volusion_API>
  <Categories_Products_Link>
    <CategoryID>107</CategoryID>
    <ProductID>63015</ProductID>
  </Categories_Products_Link>
</Volusion_API>

这是我的导入cURL脚本。

<?php
 $file = file_get_contents('category.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 = "http://mysitedomian/net/WebService.aspx?Login=xxxxxxxxxxx&EncryptedPassword=xxxxxxxxx&Import=Insert-Update";


//  Create the Header   

    //  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, array("Content-Type:application/x-www-form-urlencoded; charset=utf-8", "Content-Action:Volusion_API"));
    $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;
  
?>

1 个答案:

答案 0 :(得分:0)

只需从您的category.txt中删除以下内容

<?xml version="1.0"?>
<Volusion_API></Volusion_API>

因为它已在您的cURL脚本中定义,并且Volusion API不支持双重定义的标记。

删除上面的内容并传递给你的cURL脚本并运行它将起作用的cURL脚本。