2

我正在实施一个自定义解决方案来与Magento网站交互。我的代码在 C# 中。我正在尝试使用v2_soap APIxml-rpc APIWeb 服务来创建产品。我尝试使用这两种服务创建产品。我似乎无法成功创建产品。对于每项服务,我都会收到错误消息 [102] Invalid data given. Details in error message.。我尝试将各种数据传递给 api 调用,但没有任何运气。我想知道几件事:

1) 有什么方法可以在我进行 Web 服务调用时收到关于哪些数据无效的更好的错误消息?错误消息似乎表明我可以到达details某个地方,但我已经搜索了所有日志,但我找不到运气的错误消息数据。

2) 使用 Web 服务添加新产品所需的最低属性是什么?

这是我正在使用的一些代码。这就是XML-RPC实现。我正在使用厨师计算 xml-rpc 库。

public int CreateProduct(Product product) {
    var entity = ConvertProduct(product);
    //int productId = Service.catalogProductCreate(SessionId, "simple", "0", product.Sku, entity);
    int productId = XmlRpcService.CallReturnInt(SessionId, "catalog_product.create",
      new object[] { 
         "simple" /* product type */, 
         0 /* attribute set */, 
         product.Sku /* sku */, 
         entity /* product data */ 
      });
    return productId;
}
private XmlRpcStruct ConvertProduct(Product product) {
    var entity = new XmlRpcStruct();
    entity.Add("name", product.Name);
    entity.Add("description", product.Description);
    return entity;
}
protected IMagentoXmlRcpService XmlRpcService {
    get {
        return this.xmlRpcService;
    }
}
4

1 回答 1

5

关键是属性集。默认属性集是 4(至少对我来说)。那个小家伙是很多问题的根源。Magento Web 服务上的错误响应确实需要一些工作。

有关更多信息,请参阅此论坛主题:http: //www.magentocommerce.com/boards/viewthread/36892/

于 2009-04-22T23:04:11.073 回答