C# 如何通过jquery从Soap服务获取数据?

C# 如何通过jquery从Soap服务获取数据?,c#,javascript,jquery,soap,cordova,C#,Javascript,Jquery,Soap,Cordova,我想从Webservice(Soap)获取数据,但没有成功。我在这里的服务 我使用jquery请求服务,代码如下 var soap = "<s:Envelope xmlns:s=\"http://schemas.xmlsoap.org/soap/envelope/\">" + "<soap:Body>" + "<Test xmlns=''>"

我想从Webservice(Soap)获取数据,但没有成功。我在这里的服务
我使用jquery请求服务,代码如下

    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');
        }
    });
我花了很多时间来搜索和尝试许多解决方案,但都不起作用。

有人能帮我吗?

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

我在c#中学习了一些东西来自动启用此功能,这在这里有很好的文档记录:

接下来要做的一件事是
JSON.stringify()
数据。那么
bhRequest
是json对象吗

。。。然后跨浏览器您必须实现json2.js:

我看不到名为soap的变量在哪里被使用。看起来应该是“数据:”发送到SOAP服务,但是那里有一个叫做bhRequest的东西

另外,请确保您允许Phonegap访问您的远程服务器

<access subdomains="true" origin="*" />


在config.xml中。当你的工作正常时,你可以将它限制在你的icafe.ipos.vn域中,从而使它更具限制性。

你遇到了什么异常?我收到了400个错误请求的代码响应。是的。在config.xml中,Sr.bhRequest是上面的soap变量。
<access subdomains="true" origin="*" />