2013-03-15 190 views

回答

0
  1. Magento的有,你可以在你的“Magento管理”配置任何SOAP客户端工作SOAP服务器。

  2. Magento没有肥皂客户端内置它与另一个magento作为服务器通信。

  3. 为了实现您的目标,您必须为magento构建自定义模块。

  4. 设置一个SOAP帐户:首先,您需要一个特殊的 SOAP代理用户。在您的应用程序中,您将构建一个 SOAP客户端,该客户端的行为与常规的 浏览器相同。它会在Magento 应用程序中请求某个“页面”,但由于此页面只有在您有 适当的权限时才可访问,您需要创建一个用户帐户。

    在我们创建实际用户之前,我们需要首先为该用户创建一个角色 。以管理员身份登录到管理员面板,然后 浏览到系统,然后浏览Webservices,然后浏览SOAP/XML_RPC角色。创建一个新角色 并选择该角色允许访问的资源。

    在此示例中,我们将添加一个角色“API完全访问”,该角色具有对所有资源的完整访问权限 。在现实生活中,你应该做一个 深入研究哪些角色的权限足以满足你的目标 。添加一个可以访问和修改所有资源的API用户会带来一些额外的安全风险。

    创建角色后,我们需要创建一个API用户。浏览到 系统,然后浏览Webservices,然后浏览SOAP/XML-RPC角色。新用户需要 当然还有一个用户名和一个API密钥(可以看作是一个 密码)。记下这个用户名和API密钥,因为这些是我们需要在我们的SOAP客户端中配置的详细信息 。我们将在这里假设 用户名“soaper”。在保存新用户之前,请确保 已选择正确的用户角色(“API Full Acccess”)。

  5. 创建SOAP客户端:

    client = new SoapClient('http://mymagentohost/api/soap?wsdl'); 
    

    //如果somestuff需要API认证, //然后得到一个会话令牌 $会议= $客户 - >登录( 'apiUser', 'apiKey') ; ($ session,'somestuff.method');} $ result = $ client-> call($ session,'somestuff.method'); ($ session,'somestuff.method','arg1'); $ result = $ client-> call($ session,'somestuff.method','arg1'); ($ session,'somestuff.method',array('arg1','arg2','arg3'));} $ result = $ client-> call($ session,'somestuff.method',array('arg1','arg2','arg3')); $结果= $客户机 - >多重呼叫($会话,阵列( 阵列( 'somestuff.method'), 阵列( 'somestuff.method', 'ARG1'), 阵列('somestuff。方法',array('arg1','arg2')) ));

    //如果您不再需要会话 $ client-> endSession($ session);

    要了解有关如何创建肥皂客户端的更多信息,请尝试此链接 http://www.magentocommerce.com/api/soap/introduction.html

+0

感谢您回复我所提到的所有五个步骤。但事情是,我可以从Magento网站(服务器)的数据库显示到Magento网站B(客户端)的产品完全一样在服务器上通过API。我使用以下代码来列出所有产品。 – 2013-03-16 09:52:39

+0

是的,你可以用来显示所有类型的产品和类别,也取决于你对该用户的用户角色的访问权限。 – 2013-03-19 10:00:32

+0

检查此链接的所有方法和参数,你可以传递。 http://www.magentocommerce.com/api/soap/catalog/catalogProduct/catalog_product.create.html – 2013-03-19 10:46:34

相关问题