簡體   English   中英

使用Ajax jQuery消費Soap Web服務

[英]Consuming a soap webservice using ajax jquery

我正在嘗試使用Web服務。 我是Web服務的新手。 這里的問題是我沒有響應,並且代碼只是生成一個錯誤,根本不會輸入成功代碼:

<!DOCTYPE html>
<html>
<head>
<title>
My Web Service Test Code using Jquery
</title>
<script src="js/jquery-1.4.1.min.js" type="text/javascript"></script>
</head>
<body>
<div>
<ul>
<form id="form1" runat="server">
<li>
    <label>Member ID</label>
    <input id="member_id" type="text" />
    <input id="blnLoadMember" type="button" value="Get Details"    onclick="javascript:GetMember();" />

</li>
</form>
</ul>    
<div id="MemberDetails"></div>

</div>
<script type="text/javascript">
var soapMessage = '<soap:Envelope     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><HelloWorld xmlns="http://tempuri.org/" /></soap:Body></soap:Envelope>';

function GetMember() {
    $('input[type=button]').attr('disabled', true);
    $("#MemberDetails").html('');
    $("#MemberDetails").addClass("loading");
    $.ajax({

        url: "http://172.16.15.112:786/Members.asmx/HelloWorld",
        type: "POST",
        dataType: "xml",
        data: soapMessage,
        processData: false,
        contentType: "text/xml; charset=\"utf-8\"",

        success: function (response) {
            alert("success");
            alert(response);
            console.log(response);

           // $('#MemberDetails').html(JSON.stringify(response.d));

        },

        error: OnGetMemberError
    });
}

function OnGetMemberError(request, status, error) {
    alert(error);
    $("#MemberDetails").removeClass("loading");
    $("#MemberDetails").html(request.statusText);
    $('input[type=button]').attr('disabled', false);
}

</script>
</body>
</html>

任何幫助將不勝感激。

錯誤是:

“ TypeError:無法獲取未定義或空引用的屬性'documentElement'”

要在IE中發布XML,您應該添加meta標簽。

<meta http-equiv="X-UA-Compatible" content="IE=edge" />

以下是工作代碼,數據類型應為text,內容類型應為text / xml。 嘗試此操作,錯誤警報將有助於跟蹤實際問題。

$.ajax({
    url: "http://172.16.15.112:786/Members.asmx/HelloWorld",
    data: '<soap:Envelope     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><HelloWorld xmlns="http://tempuri.org/" /></soap:Body></soap:Envelope>', 
    type: 'POST',
    contentType: "text/xml",
    dataType: "text",
    success : function (response) {
        alert("success");
        alert(response);},
    error : function (xhr, ajaxOptions, thrownError){  
        alert(xhr.status);          
        alert(thrownError);
    } 
}); 

對於瀏覽器的所需內容,請參考問題

該問題與Web服務有關,已通過在global.config文件中放置一些標頭解決了該問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM