在Magento/PHP中使用外部web服务


Consume external web service in Magento/PHP

是否有任何教程或好的例子,我可以如何利用(消费?)外部web服务通过SOAP从Magento?(Magento是一个基于PHP的软件系统)

我看到了大量关于使用SOAP和Magento的API从外部访问Magento数据的教程,但是我想从 Magento中的访问一个外部 web服务。

我已经做了一些研究,我必须想象我可以使用SoapClient类来做到这一点,但我不确定所需的键和方法调用如何转换为设置/使用SoapClient类。如果有人能给我指出正确的方向,我会非常感激!

下面是一个例子

假设我需要发送以下SOAP请求到http://someurl.somewhere.com:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:web="http://api.channeladvisor.com/webservices/">
    <soapenv:Header>
        <web:APICredentials>
            <web:DeveloperKey>DeveloperKey</web:DeveloperKey>
            <web:Password>Password</web:Password>
        </web:APICredentials>
    </soapenv:Header>
    <soapenv:Body>
        <web:RequestAccess>
            <web:localID>99999999</web:localID>
        </web:RequestAccess>
    </soapenv:Body>
</soapenv:Envelope>

我该如何在Magento中这样做呢?

Magento是一个基于zend框架的php应用程序,所以任何关于zend和soap的教程也可以。您可以在任何magento文件(除了配置文件)中执行任何php相关的操作,尽管这样做的最佳位置是模型。