使用Javascript消费Web服务

时间:2018-07-11 17:43:54

标签: javascript asp.net web-services

人 我正在尝试使用JavaScript代码使用Web服务 这是Web服务:http://192.168.0.43/DWService/DW_WebService.asmx 它有一些方法,其中一个方法在用户发送参数时返回一个编码字符串。

我正在使用ScriptManager

<form id="form1" runat="server">
    <asp:ScriptManager ID="ScriptManager1" runat="server">
        <Services>
            <%--  web service reference --%>
            <asp:ServiceReference Path="http://192.168.0.43/DWService/DW_WebService.asmx" />
        </Services>
    </asp:ScriptManager>

调用:

<tr>
                <td>
                    <asp:Button ID="btnVwr" runat="server" Text="Visor" OnClientClick="return Submit();" />
                </td>
                <td>
                    <asp:Button ID="btnDwn" runat="server" Text="Descargar"  />
                </td>
            </tr>
            <tr>
                <td colspan="2">
                    <asp:TextBox ID="txtlinkVisor" runat="server" TextMode="MultiLine" Rows="5" Width="482px"></asp:TextBox>
                </td>
            </tr>
        </table>

我的脚本:

<script type="text/javascript">
            function Submit() {
                var condicion = $get("<%=txtDocID.ClientID %>").value;
                var url = $get("<%=txtUrl.ClientID %>").value;
                var fc = $get("<%=txtFCid.ClientID %>").value;
                var dwuser = $get("<%=txtUsr.ClientID %>").value;
                var dwpass = $get("<%=txtPas.ClientID %>").value;
                URLDocVw(condicion, url, fc, dwuser, dwpass);
                return false;
            };
            function OnSuccess(response) {
                alert(response);
            };
            function OnError(r) {
                alert(response);
            };
        </script>

服务器返回:“ 0x800a1391-JavaScript运行时错误:'URLDocVw'未定义” URLDocVw是方法的名称 我已经对scriptManager的路径进行了不同的测试,但无法解决。 拜托,这是我第一次这样做。我希望有人能帮助我。

提前谢谢。

1 个答案:

答案 0 :(得分:1)

您可以改用ES6:

$(function() {
  $("[id*=btnVwr]").click(function() {
    var url = $.trim($("[id*=txtUrl]").val());
    var fc = $.trim($("[id*=txtFCid]").val());
    var usr = $.trim($("[id*=txtUsr]").val());
    var pas = $.trim($("[id*=txtPas]").val());
    var con = $.trim($("[id*=txtDocID]").val());
    fetch('http://192.168.0.43/DWService/DW_WebService.asmx?WSDL/URLDocVw', {
    method: 'POST',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({url, fc, con, pas , usr})
  })
      .then(raw => raw.json())
      .then(data =>console.log(data))
      .catch(error => console.error(error))
  });
});