我是sencha touch的新手,我想在sencha touch中使用soap web服务。我已经为这个原因编写了代码,但问题是我只是将纯HTML内容作为响应而不是soap对象。而且我不知道如何调用从Web服务到sencha touch的特定方法。
这是我的代码: -
Ext.Ajax.request({
method: 'get',
url: 'http://192.168.1.15:80/himanshu/helloworldwebservice.asmx',
success: function (response, request) {
alert('Working!')
alert(response.responseText)
console.log('Response:-'+response.responseText)
},
failure: function (response, request) {
alert('Not working!')
console.log('Response Status:- '+response.status)
}
});
编辑: - 好的我有想法从here的网络服务调用一个特定的方法。就像我有HelloWorld()
方法只返回一个字符串而我的网址为http://192.168.1.15:80/himanshu/helloworldwebservice.asmx
。
我可以通过设置我的网址来调用HelloWorld()方法: - http://192.168.1.15:80/himanshu/helloworldwebservice.asmx/HelloWorld
但它不适合我。每次我运行程序'Not Working'警报生成并且 500 是我得到的响应统计数据。请让我明白我如何从webservice调用方法.Thanx提前。
答案 0 :(得分:3)
您将无法以这种方式使用SOAP Web服务,因为在asmx网址上执行GET请求只会返回列出您的Web服务方法的页面的HTML内容。
使用SOAP webservices依赖于POST请求,并且需要您发送正确的XML SOAP请求。我可能会建议您使用http://archive.plugins.jquery.com/project/jqSOAPClient之类的东西来执行SOAP调用并检索数据,然后将它们传递回Ext代码。
希望这有帮助
Nacef
答案 1 :(得分:0)
你的代码绝对没问题。我想你是从服务器端发送HTML数据。请在Chrome / Safari开发人员工具中查看回复。另外,使用console.log()函数代替alert()函数以获得更好的视图。
此外,在浏览器中打开此网址:“http://192.168.1.15:80/himanshu/helloworldwebservice.asmx”,并在页面的“查看来源”中显示 - 您将看到确切的发送内容。
答案 2 :(得分:0)