通过JavaScript访问Magento SOAP API:我做错了什么?

时间:2013-11-14 20:32:20

标签: javascript jquery api magento soap

我目前正在尝试访问我的magento商店的SOAP API但没有成功。我在后端创建了一个soap用户和角色,并通过xmlrpc登录进行了测试。 同源政策不是问题。我通过url myshop.com/api/?wsdl

获取wsdl

我试过jquery soap client

$.soap({
    url: 'http://my-shop.de/api/',
    method: 'login',
    data: {
        username:'soap_username',
        apiKey:'soap_userpass'
    },

    success: function (soapResponse) {
        alert("yes!!");
    },
    error: function (SOAPResponse) {
        alert(SOAPResponse.toString());

    }

})

返回404,我无法弄清楚原因。

另外我尝试了javascript soap client

var url = 'http://myshop.de/api/';
var pl = new SOAPClientParameters();
pl.add("username", 'soap_username');
pl.add("apiKey", 'soap_userpass');

SOAPClient.invoke(url, "login", pl, true, HelloTo_callBack);

function HelloTo_callBack(r) {
    alert(r.toString());
};

返回500内部服务器错误。再说一次,我不知道这里出了什么问题。 谁能给我一个关于我失踪的暗示?

任何帮助或暗示表示赞赏,谢谢!

1 个答案:

答案 0 :(得分:-3)

好的发现了问题! 这是维护模式。甚至我的IP被列入白名单,我可以正常浏览商店和后端,不知何故,肥皂api电话搞砸了。所以我的工作代码是:

$.soap({
    url: 'http://my-shop.de/api/?wsdl',
    method: 'login',
    data: {
        username:'soap_username',
        apiKey:'soap_userpass'
    },

    success: function (soapResponse) {
        alert("yes!!");
    },
    error: function (SOAPResponse) {
        alert(SOAPResponse.toString());

    }

})

(注意更改了网址)