我如何将我的Magento商店的产品销售给其他Magento网站(拥有不同的数据库,域名)。使用SOAP API或任何其他方式。
答案 0 :(得分:0)
Magento有一个肥皂服务器,您可以在“Magento Admin”中配置它以与任何肥皂客户端配合使用。
Magento没有内置soap客户端,可以作为服务器与另一个magento进行通信。
为了实现您的目标,您必须为magento构建自定义模块。
设置SOAP帐户:首先,您需要一个特殊的帐户 SOAP的代理用户。在您的应用程序中,您将构建一个 SOAP客户端和此客户端的行为与常规客户端相同 浏览器。它将在Magento内请求某个“页面” 应用程序,但因为只有你有这个页面才能访问 正确的权限,您需要创建一个用户帐户。
在创建实际用户之前,我们需要为其创建一个角色 这个用户第一。以管理员身份登录管理员面板 浏览到System,然后是Webservices,然后是SOAP / XML_RPC Roles。创建一个新角色 并选择此角色提供访问权限的资源。
在此示例中,我们将添加一个已满的角色“API Full Access” 访问所有资源。在现实生活中你应该做一个 彻底研究权限就足够的角色 为了你的目标。添加可以访问和修改所有的API用户 资源开辟了一些额外的安全风险。
创建角色后,我们需要创建一个API用户。浏览到 系统,然后是Web服务,然后是SOAP / XML-RPC角色。新用户的需求 当然是用户名和API密钥(可以看作是 密码)。记下此用户名和API密钥,因为它们是 我们需要在SOAP客户端中配置的详细信息。我们假设 用户名“soaper”在这里。在保存新用户之前,请确保 选择了正确的用户角色(“API Full Acccess”)。
创建SOAP客户端:
client = new SoapClient('http://mymagentohost/api/soap?wsdl');
//如果某些资料需要api认证, //然后获取会话令牌 $ session = $ client-> login('apiUser','apiKey');
$ result = $ client-> call($ session,'somestuff.method'); $ result = $ client-> call($ session,'somestuff.method','arg1'); $ result = $ client-> call($ session,'somestuff.method',array('arg1','arg2','arg3')); $ result = $ client-> multiCall($ session,array( 阵列( 'somestuff.method'), array('somestuff.method','arg1'), array('somestuff.method',array('arg1','arg2')) ));
//如果您不再需要会话 $客户端 - > endSession($会议);
要了解有关如何创建soap客户端的更多信息,请尝试此链接 http://www.magentocommerce.com/api/soap/introduction.html!
答案 1 :(得分:0)
如果您要使用SOAP,请查看有关如何使用SOAP的文章: http://inchoo.net/ecommerce/magento/magento-api-v2-soap-unit-testing/
还请看一下这个,以便在必要时扩展SOAP API: http://inchoo.net/ecommerce/magento/magento-api-v2/
当然,我还有一个要读:http://inchoo.net/ecommerce/magento/magento-v2-soap-demystified/