首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使SOAP v2 multiCall到Magento?

如何使SOAP v2 multiCall到Magento?
EN

Stack Overflow用户
提问于 2015-12-24 18:18:20
回答 1查看 1.1K关注 0票数 1
代码语言:javascript
复制
$client = new SoapClient($host . '/api/v2_soap/?wsdl');
$session = $client->login($apiUser, $apiKey);

$result = $client->catalogInventoryStockItemMultiUpdate($session, 'sku_id1',
          array('qty' => 1), null, 'sku');
$result = $client->catalogInventoryStockItemMultiUpdate($session, 'sku_id1',
          array('qty' =>2), null, 'sku');

如何使用函数catalogInventoryStockItemMultiUpdate()或其他决策调用多个函数一个请求?

示例仅用于soap v1,而不是soap v2。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-14 00:37:29

为那些从谷歌那里得到它的人回答这个问题。v2 Magento没有多功能。v1 API可以这样做。

下面是API v1文档中的代码,演示了如何同时进行多个调用:

代码语言:javascript
复制
$client = new SoapClient('http://magentohost/soap/api/?wsdl');

// If somestuff requires api authentification,
// then get a session token
$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(
     array('somestuff.method'),
     array('somestuff.method', 'arg1'),
     array('somestuff.method', array('arg1', 'arg2'))
));


// If you don't need the session anymore
$client->endSession($session);

请求仍然必须一个接一个地创建和排队,但至少您可以节省一个接一个发送请求所需的时间。

在我所拥有的工具中,我使用v1和v2 api的组合来进行批量更新和选择性更新。WSI API可能可以完成您所需的一切,只是不兼容v1。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34456538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档