首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过jquery从Soap服务中获取数据?

如何通过jquery从Soap服务中获取数据?
EN

Stack Overflow用户
提问于 2013-10-16 18:16:19
回答 2查看 345关注 0票数 0

我想从Webservice( Soap)获取数据,但没有成功。我的服务在这里http://icafe.ipos.vn/WSUitility/evsServiceUtility.svc?wsdl

我使用jquery请求服务,代码如下

代码语言:javascript
复制
    var soap = "<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\">" +
        "<soap:Body>" +
        "<Test xmlns=''>" +
        "</Test>" +
        "</soap:Body>" +
        "</soap:Envelope>";
    $.ajax({
        url: 'http://icafe.ipos.vn/WSUitility/evsServiceUtility.svc?wsdl',
        method: 'post',
        data: soap,
        contentType: "text/xml",
        dataType: "xml",
        beforeSend: function (xhr) {
            xhr.setRequestHeader("SOAPAction", "urn:evsServiceUtility/Test1");
        },
        crossDomain: true,
        success: function(SOAPResponse) {
            alert('ok');
        },
        error: function(SOAPResponse) {
            alert('no ok');
        }
    });

我的服务是:

代码语言:javascript
复制
    public string Test()
    {
        try
        {
            return "Successfull!";
        }
        catch (Exception ex)
        {
            return ex.Message;
        }
    }

我花了很多很多次来搜索和尝试许多解决方案,但都不起作用。

有谁可以帮我?

EN

回答 2

Stack Overflow用户

发布于 2013-10-16 18:32:31

我认为您的数据类型可以是XML,这不是问题。问题是,如何对data或参数进行编码?也许可以在浏览器的控制台中检查POST请求中的响应。

我在c#中学到了一些东西来自动实现这一点,这里有很好的文档:http://encosia.com/3-mistakes-to-avoid-when-using-jquery-with-aspnet-ajax/

然后剩下的一件事就是对数据进行JSON.stringify()。所以bhRequest是一个json对象,对吗?

..。然后跨浏览器,你必须实现json2.js:https://github.com/douglascrockford/JSON-js

票数 0
EN

Stack Overflow用户

发布于 2013-10-16 20:13:39

我不知道在哪里使用了名为soap的var。看起来应该是发送到SOAP服务的"data:“,但实际上是名为bhRequest的东西。

还要确保您允许Phonegap访问您的远程服务器

代码语言:javascript
复制
<access subdomains="true" origin="*" />

在你的config.xml里。当你开始工作的时候,你可以通过把它限制在你的icafe.ipos.vn域中来使它变得更加严格。

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

https://stackoverflow.com/questions/19400769

复制
相关文章

相似问题

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