向volusion API发送插入请求无效,返回1


sending insert request to volusion API does not work and return 1

只返回"success1"。这是我的代码和XML文件。谁能告诉我为什么这个产品没有进口到volusion ?当我运行这段代码时,它只返回1。我不知道是什么问题,产品没有插入。

<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>

  • 我的Api请求代码
  • //  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://tebkq.mvlce.servertrust.com/net/WebService.aspxLogin=mylogin&EncryptedPassword=mypassword&Import=Insert";
    //  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);
         //echo $data;
        //  Check for Errors
        if (curl_errno($ch)){
            echo "error";
            print curl_error($ch);
        } else {
            echo "success";
           curl_close($ch);
        }
       //  Display the Xml Returned on the Browser
        echo $data;
    ?>
    

    删除<Import></Import>,它应该可以工作。

    在xml中,尝试用xmldata:

    替换导入节点
    <?xml version="1.0" encoding="utf-8" ?>
    <xmldata>
        <Products>
            <ProductID>360</ProductID>
            .....
        </Products>
    </xmldata>
    

    这是我在发送插入或更新时使用的标头

    curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type:application/x-www-form-urlencoded; charset=utf-8", "Content-Action:Volusion_API"));